加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 13.6  FPGA内部结构设计
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

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

2013/08/30
阅读需 4 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

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控制器给出了白皮书和开源模块。设计者只需将该开源模块引用至系统的设计中,进行一定的修改即可使用。

相关推荐

电子产业图谱

华清远见(www.farsight.com.cn)是国内领先嵌入师培训机构,2004年注册于中国北京海淀高科技园区,除北京总部外,上海、深圳、成都、南京、武汉、西安、广州均有直营分公司。华清远见除提供嵌入式相关的长期就业培训、短期高端培训、师资培训及企业员工内训等业务外,其下属研发中心还负责嵌入式、Android及物联网方向的教学实验平台的研发及培训教材的出版,截止目前为止已公开出版70余本嵌入式/移动开发/物联网相关图书。企业理念:专业始于专注 卓识源于远见。企业价值观:做良心教育、做专业教育,更要做受人尊敬的职业教育。