您的位置 首页 知识

根据FPGA的基带64×64 数据分配矩阵设计方案

数字分配矩阵网络及矩阵开关是自动测试系统的重要组成部分,担负着控制信号流的任务,常用于卫星/移动/电信E1/T1信号程控分配调度。

本文选用FPGA作为完结操控逻辑的中心部件,提出了依据FPGA的基带64×64 数据分配矩阵规划计划,并介绍了上位机的软件规划思路和FPGA的内部编程完结及仿真。经验证该计划具有规划大、成本低、高速等特色,可广泛运用于大规划基带数字体系测验及信号程控分配调度中。

0 导言

数据分配矩阵即矩阵开关,望文生义,指结构为队伍穿插排布的开关产品,其特色为每个节点衔接一个行/列,每个节点能够独自操作,经过设置节点的不同组合能够完结信号的路由。矩阵开关的首要优势在于其简化的部线,整个测验体系可轻松地动态改动其内部衔接途径而无须外部手动干涉。矩阵开关的运用十分灵敏便利,是现在程控开关产品中种类最多的产品,在轿车电子、半导体测验、航空航天等范畴得到了广泛的运用。

FPGA具有运转速度快,内部逻辑资源丰富,外围I/O口数量多等长处,因而本规划选用FPGA作为中心器材。

1 体系结构及功用

本规划是为了完结64位输入信号到64位输出的恣意无穿插的切换,即输入与输出是一一对应的。因为本规划是针对基带数字信号,而规划中选用的晶振频率为25 MHz,因而底子不必考虑FPGA处理异步时钟域数据传输的问题,只需直接将对应的输入信号经电平转化后,经译码后直接输出到相应的某路输出接口即可。

上位机ARM 经过串口向FPGA 发送接口的衔接信息,FPGA依据接纳到的数据进行译码,将对应的输入与对应的输出衔接起来,完结规则链路的衔接。考虑到所含资源以及管脚数量,本规划计划选用Altera公司Cyclone Ⅲ系列EP3C25F256型FPGA.选用了4块32路的电平转化芯片完结5 V 信号向FPGA 能够辨认的TTL 信号的转化。

其结构框图如图1所示。

2 上位机规划

上位机的界面如图2 所示。在相应的输入通道文本框里输入0~64,点击“确认”按钮后,首要对文本框里一切的数据进行比较判别,如呈现重复则进行报错,提示从头输入。无误后,经过串口按输出接口次序顺次向FPGA发送64条接口的衔接指令。每一条指令包含3 B,第一个字节为信息头“AA”,若FPGA接纳到的某条指令的头字节不是“AA”,则无回来信息,上位机将从头发送这条指令直到正确中止。第二个字节为输入端口字节,即对应文本框中的数字,如没有输入数字则默许发送0,所以如需端口某条链路断开只要在相应的文本框中输入0,点击确认即可。第三个字节为输出端口对应的数据,按1到64次序发送。图2中的“远控”按钮为预留的用作计算机远控运用。

3 下位机规划

3.1 串口通讯协议

串行通讯是一种能够将接纳到的并行数据字符转化为接连的串行数据流发送出去,一起可将接纳的串行数据流通化为并行的数据字符发送出去的通讯协议。

其数据帧首要包含1位开端位,8位数据位,1位奇偶校验位,1/2位中止位。

3.2 FPGA内部编程

FPGA模块的首要功用是完结串口收发和译码,相应地在用Verilog HDL完结时也分为串口收发和译码2个电路模块,经归纳后其RTL级视图如图3所示。开发东西选用Altera公司推出的集成EDA 开发东西Quartus Ⅱ,能够完结Altera公司一切的FPGA /CPLD产品开发的规划输入、归纳、完结等环节。

3.2.1 串口收发模块规划

串口收发模块便是图3中的uart_top模块,首要担任串行数据的接纳与发送,并将接纳到的数据送入下一级。

该模块的功用已经过串口调试东西调试成功。该模块由4个子模块构成,分别为操控接纳波特率的speed_rx模块、操控发送波特率的speed_tx 模块、数据接纳模块my_uart_rx、数据发送模块my_uart_tx.

接纳、发送波特率的操控能够引证同一模块的发送来完结。其模块化框图如图4所示,当检测到输入信号bps_start呈现一个上升沿后,则该模块经过计数来完结分频,例如时钟频率为25 MHz,波特率为9 600,则计数周期的25 000 000/9 600≈2 604,该模块部分代码如下:

数据接纳模块的模块化框图如图5所示,它是经过移位运算来接纳串行数据,如检测到rs232_rx由高电平变为低电平则开端移位接纳数据,每次接纳3 B 的数据,将第二、第三个字节输入下一级,若检测到第一个字节为10101010(即16进制的AA),标志信号flag就将保持一个周期的高电平输出,不然flag一向保持高电平,那么后级将无法锁存第二、第三字节。部分代码如下:

数据发送模块是用来回来接纳数据让上位机进行纠错的,其模块化框图如图6所示。如检测到flag变为高电平时,锁存输入的两个字节回来给上位机,部分代码如下:

3.2.2 译码模块规划

译码模块的模块化框图如图7所示,其功用是对上位机发送的输入输出端口编号进行译码,使相应的输入端口和输出端口连通,如检测到flag 有用的情况下,rx_data_in为2,rx_data_out为3,则该模块会将din[2]通道的输入信号经dout[3]输出通道输出。部分代码如下[10]:

3.2.3 译码模块仿真

因为64×64的仿真很繁琐且不易操作,所以对4×4的译码模块进行仿真,仿真成果如图8所示,输出1与输入3相连,输出2与输入4相连,输出3悬空,输出4与输入2相连。

4 结语

本文选用FPGA作为完结操控逻辑的中心部件,提出了依据FPGA的基带64×64 数据分配矩阵规划计划,并介绍了上位机的软件规划思路和FPGA的内部编程完结及仿真。经验证本体系基本能完结基带数字信号的分配路由,然后证明了该计划具有规划大、成本低、高速等特色,可广泛运用于大规划基带数字体系测验及信号程控分配调度中。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/134488.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部