PLB IPIF Master Interface (VHDL mallar och exempel mjuk)

B

BlackOps

Guest
Hej, när jag lägger IP perifera i EDK 9.1, och väljer att ha ett program tillgängliga register, guiden genererar VHDL-kod för att skapa dessa register, och också exempel programvara som får åtkomst till dessa register.

Men när jag väljer master modul också genererar VHDL-koden för befälhavare modul genomförande.och även i VHDL kommentarer det står hur man får tillgång till och användning master modul med hjälp av mjukvara, men det
spelar ingen generera någon programvara ...till exempel ... här är en bit kommentera kod:

Kod:------------------------------------------

- Exempel kod för att visa användaren logik befälhavaren modell funktionalitet

--

- Obs!

- Exemplet kod som presenteras här är att visa dig ett sätt att stimulera

- Det IPIF IP master interface under användarens kontroll.
Det föreskrivs

- Demonstrationsändamål bara och ger användaren möjlighet att utöva IPIF

- IP-master gränssnittet under provning och utvärdering av mallen.

- Denna användare logik befälhavaren modell innehåller ett 16-byte tillplattad register och

- Användaren är skyldig att initiera värdet till lust och sedan skriva till

- Modellens "Kör"-porten för att inleda användaren logik befälhavaren drift.

--

- Control Register (C_BASEADDR OFFSET 0x0):

- Bit 0 - Rd (Läs Begäran Control)

- Bitars 1 - PLOMDUGHU (Skriv Begäran Control)

- Bitars 2 - BL (Buss Lock Control)

- Bit 3 - Brst (Burst Assertion Control)

- Bitars 4-7 - Reservdelar (Reservbehållare Control Bits)

- Status Register (C_BASEADDR OFFSET 0x1):

- Bit 0 - Utfärdat (Överföring Utfärdad Status)

- Bitars 1 - Bsy (User Logic Pro är upptaget)

- Bitars 2-7 - Reservdelar (Reservbehållare Status bitar)

- IP2IP registret (C_BASEADDR OFFSET 0x4):

- Bitars 0-31 - IP2IP Adress (Denna 32-bitars värde som används för att fylla den

- IP2IP_Addr (0:31) Gatulista under en läsning eller skrivning användare

- Logik master drift)

- IP2Bus registret (C_BASEADDR OFFSET 0x8):

- Bitars 0-31 - IP2Bus Adress (Denna 32-bitars värde som används för att fylla den

- IP2Bus_Addr (0:31) Gatulista under en läsning eller skrivning användare

- Logik master drift)

- Längd registret (C_BASEADDR OFFSET 0xC):

- Bitars 0-15 - Överföring Längd (Denna 16-bitars värde som används för att ange

- Antal byte (1 på 65.536) för att överföra under användaren logik

- Mästare läsa eller skriva operationer)

- BE registret (C_BASEADDR OFFSET 0xE):

- Bitars 0-7 - IP2Bus befälhavaren BE (Detta 8-bitars värde som används för att fylla den

- IP2Bus_MstBE byte gör bussen under användaren logik befälhavare läsa eller

- Skrivoperationer, endast användas i enskilda uppgifter beat drift)

- Gå registret (C_BASEADDR OFFSET 0xF):

- Bitars 0-7 - Gå Port (A skriva till detta byte adress initierar användaren

- Logik master överföra data nyckelvärde av 0x0A måste användas)

--

- Obs! OFFSET kan vara olika beroende på din adressutrymme konfiguration,

- Som standard är det antingen 0x0 eller 0x100.
Se IPIF adressintervall array

- Till verkligt värde.

--

- Här är ett exempel i ett program för att inleda en 4-byte

- Skrivoperation (enda uppgifter beat) i detta befälhavare modell:

- 1.
skriva 0x40 till kontroll register

- 2.
skriva källdatafilen adress (lokal) till ip2ip register

- 3.
skriver måladressen (remote) till ip2bus register

- - Observera: den här adressen kommer att ligga på målet buss adressrad

- 4.
skriva 0x0004 till längd register

- 5.
skriva giltigt byte körfält värde för att registrera

- - Anm: detta värde måste anpassas till ip2bus adress

- 6.
skriva 0x0a att gå register, detta kommer att börja skriva drift

 

Welcome to EDABoard.com

Sponsor

Back
Top