DocumentCode
2260533
Title
Memory-mapped I/O over dual port BRAM on FPGA
Author
Melo, Rodrigo A. ; Caruso, David M. ; Tropea, Salvador E.
Author_Institution
Lab. de Desarrollo Electronico con Software Libre, Inst. Nac. de Tecnol. Ind., Buenos Aires, Argentina
fYear
2012
fDate
20-23 March 2012
Firstpage
1
Lastpage
6
Abstract
Nowadays, Direct Memory Access (DMA) is one of the most used mechanisms for data transfer between a processor and its peripherals. Another possibility is to map peripherals directly in the memory space, which has the disadvantage of requiring dual port memories when the device handles large quantities of data. It typically is the case of video and network applications. In this work we propose the use of dual port BRAM often available in modern FPGAs to implement a core using Memory mapped I/O (MMIO). As a case study, we present the development of an AVR microcontroller core with the Media Access Controller (MAC) Ethernet built in. It is capable of running the uIP TCP/IP stack, with a Web Server as example application. Additionally, we discuss the advantages of moving the program code to an external memory that use the Common Flash Interface (CFI) standard. This design was simulated with Free Software tools and it was verified in hardware using a Xilinx Virtex 4 FPGA.
Keywords
Internet; field programmable gate arrays; file servers; local area networks; microcontrollers; random-access storage; AVR microcontroller core; Common Flash Interface standard; Free Software tool; Web Server; Xilinx Virtex 4 FPGA; external memory; media access controller Ethernet built in; memory-mapped I-O over dual port BRAM; modern FPGA; program code; uIP TCP-IP stack; Field programmable gate arrays; Hardware; IP networks; Microcontrollers; Random access memory; Read only memory; Registers; AVR; BRAM; CFI; DMA; Ethernet; FPGA; MAC; MMIO; Web server; uIP;
fLanguage
English
Publisher
ieee
Conference_Titel
Programmable Logic (SPL), 2012 VIII Southern Conference on
Conference_Location
Bento Goncalves
Print_ISBN
978-1-4673-0184-8
Type
conf
DOI
10.1109/SPL.2012.6211780
Filename
6211780
Link To Document