DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1222|回复: 0
打印 上一主题 下一主题

[待整理] 高速PCI信号采集卡设计与实现综合实例之: FPGA内部结构设计

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-12 16:30:18 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
        13.6  FPGA内部结构设计

        13.6.1  构框图

        基于FPGA及PCI9054的信号采集卡的核心设计部分是FPGA内部结构的逻辑设计。如图13.15所示为本系统FPGA内部结构框图。
         
        其中,信号接收器是接收采集信号的模块,对LVTTL信号接口和LVDS信号接口输入的信号进行分析,并将获得的信号送入下一个模块。
         
        内部信号源是一个用于测试的模块。通过产生一个已知的有序的信号序列送至信号接收器,最终进入主机后进行检测,即可得知整个传输过程的正确性。
         
        双口RAM用于实现信号的串并转换,使输入的信号转换成32位数据位宽,同时实现时钟域的转换。另外通过乒乓操作实现数据的有序存取。
       

        图13.15   FPGA内部结构框图

         
        数据控制模块用于产生双口RAM和SDRAM控制器的地址总线、数据总线和控制总线,是双口RAM模块与SDRAM控制器的桥梁。实现双口RAM至SDRAM控制器正确的数据转移。同时,数据控制模块还负责从SDRAM控制器读取数据,并送至FPGA内的FIFO缓冲区中,用于PCI总线交互。
         
        SDRAM控制器是FPGA内用于外部SDRAM控制的模块。
         
        PCI本地控制器是FPGA内用于控制PCI9054本地总线交互的模块。
         
        PLL是Altera FPGA内提供的模拟延迟锁相环模块,可以实现系统时钟的倍频、分频及延迟等时钟控制操作。通过该模块可以实现系统内不同时钟域的时钟分配。
         
        13.6.2  设计方法

        在实际的设计中,主要通过自行编写模块、调用宏模块和引用开源模块3种方式来实现模块的设计。
         
        1.自行编写模块

        自行编写模块就是完全通过自行编写的逻辑完成模块的设计,可以使用硬件编程语言、状态机、电路图等方式实现。
         
        本设计中的PCI本地控制器、信号接收器、内部信号源、数据控制等模块都是使用Verilog硬件语言自行编写设计的。
         
        2.调用宏模块

        在逻辑设计中,Altera已经为设计者提供了丰富的基本逻辑组件的模块。设计者只需使用宏模块向导进行调用,配置相应的参数,即可得到符合设计需求的模块。
         
        本设计中的双口RAM、PLL及FIFO缓冲模块正是通过调用Cyclone FPGA支持的相应的LPM_RAM_DP、ALTPLL和LPM_FIFO+宏模块实现的。如图13.16所示为Altera 宏模块向导管理器界面。
       

        图13.16  Altera宏模块向导管理器

         

        3.引用开源模块

        除了设计者自行编写模块及宏模块向导管理器中提供的模块以外,设计者还可以引用开源的模块加入到系统的设计中。开源的模块往往是一些厂家对一些常见的外围器件提供的控制模块。
         
        本设计中使用的SDRAM控制器正是引用了成熟的开源模块进行的设计,Altera为SDRAM控制器给出了白皮书和开源模块。设计者只需将该开源模块引用至系统的设计中,进行一定的修改即可使用。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-8-3 01:46 , 耗时 0.096476 秒, 22 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表