基于 FPGA 的双口 RAM 实现及应用秦鸿刚刘京科吴迪时间:2010 年 04月 15日字体:大中小关键词: FPGA RAM CY7C006A Cypress 随着电子技术的飞速发展,大量的高速数据采集和在线测试对现代工业测控系统和仪器仪表的功能和性能提更高要求。 CPU 并行工作(双单片机系统)方式得到广泛应用。为了使 2个单片机能够快速有效交换信息,充分利用系统资源,采用双口 RAM 实现存储器共享是目前较为流行的方法。大容量、高速 FPGA 器件具有集成度高、体积小、灵活可重配置、实验风险小等优点,在复杂数字系统中得到越来越广泛的应用。数字电路设计采用 l片 FPGA 器件、存储设备和一些电气接口匹配电路的解决方案已成为主流选择方案。用 FPGA 来实现双口 RAM 的功能可以很好地解决并行性和速度问题,而且其灵活的可配置特性使得基于 FPGA 的双口 RAM 易于进行修改、测试及系统升级,可降低设计成本,缩短开发周期。 1双口 RAM 简介双口 RAM 是在 1个 SRAM 存储器上具有两套完全独立的数据线、地址线和读写控制线,并允许两个独立的系统同时对其进行随机性访问的存储器,即共享式多端口存储器。双口 RAM 最大的特点是存储数据共享。 1个存储器配备两套独立的地址、数据和控制线,允许两个独立的 CPU 或控制器同时异步地访问存储单元。因为数据共享。则必须具有访问仲裁控制。内部仲裁逻辑控制提供以下功能:对同一地址单元访问的时序控制;存储单元数据块的访问权限分配:信令交换逻辑(例如中断信号)等。双口 RAM 可用于提高 RAM 的吞吐率,适用于实时数据缓存。 CY7C006A 是 Cypress 公司生产的 16 kb×8高速双口静态 RAM ,存取速度小于 20 ns。该器件具有真正的双端口,可以同时进行数据存取,两个端口具有独立的控制信号线、地址线和数据线,另外通过主/从选择可以方便地扩存储容量和数据宽度。通过器件的信号量标志器,左、右两端口可以实现器件资源共享。 2双口 RAM 在 FPGA 中的实现本设计采用自顶而下的设计思想。选用 Xilinx 公司的 Spartan-6 FPGA 器件,基于低功耗 45 nm、 9- 金属铜层、双栅极氧化层工艺技术,提供高级功耗管理技术, 150 000 个逻辑单元,集成式 PCI Expres s 模块,高级存储器支持。 250 MHz DSPslice 和3. 125 Gb/s低功耗收发器。通过 Verilog HDL 语言对双口 RAM 功能的描述就能在一片 FPGA 器件内实现 8位 16字节的双口 RAM ,并进行读写操作控制。双口 RAM 读写操作控制 Verilog HDL 代码如下: 图l是双口 RAM 的 Verilog HDL 代码在 Xilinx ISE 中综合后的寄存器传输级电路图。功能仿真的是 Xilinx 公司已经建立自己的编译库的 Modelsim XEⅢ6. 2c软件,仿真结果如图 2所示,满足设计要求。经 Xilinx ISE 软件综合实现设计,生成可下载的比特流,将其下载到 FPGA 中,实现双口 RAM 的功能。 FPGA 器件内部具有丰富的资源,可以在实现双口 RAM 基本功能的基础上。满足系统设计的其他需求, 且灵活可配置。 3基于 FPGA 的双
基于FPGA的双口RAM实现及应用 来自淘豆网m.daumloan.com转载请标明出处.