基于VHDL的专用串行通信芯片详解

分享到:

目前,许多厂商都提供通用的串行通信芯片,其传输方式分为同步方式和异步方式。其中,异步芯片大多与INTEL的8250芯片兼容;而同步方式,由于一般涉及到所支持的传输协议(BSC、HDLC、SDLC等),所以当用户要求应用特定的同步传输协议时,往往需要设计专用的SRT(同步收发器)。以前,大多采用通用的逻辑元器件进行设计,这导致了设计和调试过程冗长、系统稳定性不高,非常不便。如今,随着以FPGA和CPLD为代表的可编程ASIC技术的日趋成熟和完善,用户完全可以根据自己的要求,以EDA技术作为开发手段,用一块FPGA或CPLD设计出符合自己需要的芯片。本文以开发统计时分复用器中的专用同步收发芯片为例,介绍整个芯片的开发流程。

1.SRTCRTL.VHD:作为SRT的控制模块,负责地址译码。当片选信号有效时,它将数据线上的数据写入相应的寄存器。SRT内部包含接收缓存器、发送保持器、线路控制寄存器、除数寄存器(高低8位各1个)和自环控制寄存器等6个控制寄存器。通过对这些寄存器的读写,CPU可以完成数据发送、接收、自环以及芯片参数设置等操作。

2.LOOP.VHD:这个模块用于测试芯片本身的功能。用户首先将芯片设置为自环状态,使芯片内部的发送数据线与直接接收数据线短接。然后,用户可以通过向发送保持器写入特定的数据,并与接收缓存器中读出的数据进行比较,以判断芯片是否正常工作。

3.CLKGEN.VHD:这是波特率发生器模块,用于产生发送同步的时钟信号doclk。它将除数寄存器的高低8位(共16位数据)作为除数,对外部2MHz的时钟源进行分频。用户可以通过修改除数寄存器的值来动态地改变数据传输速率,从而实现方便和灵活的操作。

4.RBR.VHD:作为整个芯片的接收模块,RR.VHD包括接收缓存器、接收数据同步和串/并转换。当接收缓存器中没有数据时,ren信号有效,通知发送方传输数据。然后,根据dilck对di信号进行采样。一旦缓存器满,ren无效,dr有效,通知CPU读取数据。

 

总之,SRT的设计需要仔细考虑这些模块之间的交互和功能。通过模块化设计,你可以更好地管理复杂性,提高代码的可维护性,并确保芯片的性能达到预期。

 

相关资讯
基于VHDL的专用串行通信芯片详解

本文以开发统计时分复用器中的专用同步收发芯片为例,介绍整个芯片的开发流程。

两种基于FPGA的软件滤波方法

干扰脉冲和毛刺信号是影响FPGA 稳定工作的主要因素。与硬件滤波相比,软件滤波不需要硬件电路的支持,从而可以减少元器件的使用,降低成本,更重要的是软件滤波更易于修改,所以常采用软件滤波的方法来实现电路中的信号滤波问题。

新型SDH系统设计及FPGA仿真

针对目前国内SDH系统中还没有一个专门的E1分接复用芯征,本文介绍一种用高级硬件描述语言VHDL及状态转移图完成该发接复用器的设计的新型设计方法及其FPGA实现。并给出了用Xilinx FoundaTIon tools EDA软件设计的电路仿真波形及Spartan XCS30XL完成FPGA实现的结果。

SDR实现商用化还需要新的中间件

如今,为软件定义无线电(SDR)寻求完全可重构的整数CPU(integer CPU)或基带DSP的梦想几近破灭。但是随着SDR在军事、公共安全乃至消费市场的不断发展,关注中间件的专家们正在寻找新的途径来优化现有的SDR应用体系架构。

精彩活动