基于CPLD的异步串行收发器设计
发布时间:2008/5/28 0:00:00 访问次数:477
摘要:介绍了基于cpld的异步串行收发器的设计方案,着重叙述了用混合输入(包括原理图和vhdl)实现该设计的思想,阐述了在系统可编程(isp)开发软件的应用方法与设计流程,并给出了vhdl源文件和仿真波形。
关键词:异步串行收发器;混合输入;在系统可编程;cpld;isplsi1016
传统数字系统的设计主要基于标准逻辑器件并采用“bottom-up”(自底向上)的方法构成系统。这种“试凑法”设计无固定套路可寻,主要凭借设计者的经验。所设计的数字系统虽然不乏构思巧妙者,但往往要用很多标准器件,而且系统布线复杂,体积功耗大,可靠性差,相互交流和查错修改不便,设计周期也长。随着电子技术的发展,采用先进的cpld 复杂的可编程逻辑器件器件取代传统电路已经成为技术发展的必然趋势。lattice公司的isplsi是当今世界上速度最快密度最高的cpld之一。它采用先进的isp技术,使器件无需拆卸即可在系统内重新配置逻辑功能。数字系统设计的革命性变化,使得传统的“固定功能集成块+连线”的设计方法正逐步退出历史舞台,而基于芯片的设计正在成为电子系统设计方法的主流。
本设计选用lattice公司生产的isplsi1016器件,并以“异步串行收发器”为例,采用现代电路与系统中的设计思想来说明“基于芯片的设计”在实现数字系统的具体应用方法。这种设计方法不仅可使硬件设计“软件化”、缩短设计周期、提高效率,而且易于修改和“升级”。
1 异步串行收发器的工作原理
异步串行收发器的工作原理主要包括两部分:第一是接收串行数据并将其转化为并行数据,第二是把并行数据以串行数据方式发送出去。由于接收和发送是异步的,所以接收部分和发送部分需要不同的时钟。
发送部分的系统工作原理如图1所示,其中txd70是并行数据输入信号,tbitclk是发送器时钟信号,resetf是发送器控制模块内部复位信号,mwdslf是电平敏感锁存器使能信号,trstf是一位锁存器模块复位信号,txdata是串行数据输出信号。
当发送电路工作时,电平敏感锁存器使能信号(mwdslf)有效,并行数据被送入锁存器,之后,控制模块1产生并入串出移位寄存器装入信号(stld),以在时钟信号(tbitclk)的作用下,将并行数据装入并入串出移位寄存器,然后,控制模块1再产生并入串出移位寄存器移位信号(stld),并在时钟信号(tbitclk)的作用下,将并行数据移出。
接收部分的系统工作原理如图2所示,其中rxdata是串行数据输入信号,rbitclk是接收器时钟信号,re-setf是接收器控制模块内部复位信号,mrdslf为边沿触发锁存器使能信号,rxd7:0是并行数据输出信号,rdrdyf是并行数据准备好信号。该部分电路工作时,首先在时钟信号(rbitclk)的作用下,串行数据(rxdata)被串入并出移位寄存器转化为并行数据;同时,控制模块2在行计数控制下,在一帧串行数据到并行数据转换完成时,使边沿触发锁存器使能信号mrdslf有效;之后,在控制模块产生的时钟信号的作用下将并行数据锁存到锁存器,同时,使并行数据准备好信号(rdrdyf)有效。
2 异步串行收发器的具体实现
硬件电路功能来用lattice公司的cpld来实现,用isplever3.0 进行软件设计。可利用原理图和硬件描述语言vhdl完成源文件的设计。以下对其cpld流程源文件及仿真波形作以介绍。
2.1 用isplever软件设计cpld的流程
lattice公司新的设计工具isplever可支持isp-mach、 isplsi、 ispgdx、 ispgal、 gal器件以及具有革新意义的新的ispmach 5000vg和ispmach 4000 cpld器件系列。用isplever设计cpld的源文件主要有硬件描述语言(vhdl、verilog hdl和able-hdl)、电路原理图和网表五种方式。在利用该软件设计数字电路与系统时,可采用原理图、硬件描
摘要:介绍了基于cpld的异步串行收发器的设计方案,着重叙述了用混合输入(包括原理图和vhdl)实现该设计的思想,阐述了在系统可编程(isp)开发软件的应用方法与设计流程,并给出了vhdl源文件和仿真波形。
关键词:异步串行收发器;混合输入;在系统可编程;cpld;isplsi1016
传统数字系统的设计主要基于标准逻辑器件并采用“bottom-up”(自底向上)的方法构成系统。这种“试凑法”设计无固定套路可寻,主要凭借设计者的经验。所设计的数字系统虽然不乏构思巧妙者,但往往要用很多标准器件,而且系统布线复杂,体积功耗大,可靠性差,相互交流和查错修改不便,设计周期也长。随着电子技术的发展,采用先进的cpld 复杂的可编程逻辑器件器件取代传统电路已经成为技术发展的必然趋势。lattice公司的isplsi是当今世界上速度最快密度最高的cpld之一。它采用先进的isp技术,使器件无需拆卸即可在系统内重新配置逻辑功能。数字系统设计的革命性变化,使得传统的“固定功能集成块+连线”的设计方法正逐步退出历史舞台,而基于芯片的设计正在成为电子系统设计方法的主流。
本设计选用lattice公司生产的isplsi1016器件,并以“异步串行收发器”为例,采用现代电路与系统中的设计思想来说明“基于芯片的设计”在实现数字系统的具体应用方法。这种设计方法不仅可使硬件设计“软件化”、缩短设计周期、提高效率,而且易于修改和“升级”。
1 异步串行收发器的工作原理
异步串行收发器的工作原理主要包括两部分:第一是接收串行数据并将其转化为并行数据,第二是把并行数据以串行数据方式发送出去。由于接收和发送是异步的,所以接收部分和发送部分需要不同的时钟。
发送部分的系统工作原理如图1所示,其中txd70是并行数据输入信号,tbitclk是发送器时钟信号,resetf是发送器控制模块内部复位信号,mwdslf是电平敏感锁存器使能信号,trstf是一位锁存器模块复位信号,txdata是串行数据输出信号。
当发送电路工作时,电平敏感锁存器使能信号(mwdslf)有效,并行数据被送入锁存器,之后,控制模块1产生并入串出移位寄存器装入信号(stld),以在时钟信号(tbitclk)的作用下,将并行数据装入并入串出移位寄存器,然后,控制模块1再产生并入串出移位寄存器移位信号(stld),并在时钟信号(tbitclk)的作用下,将并行数据移出。
接收部分的系统工作原理如图2所示,其中rxdata是串行数据输入信号,rbitclk是接收器时钟信号,re-setf是接收器控制模块内部复位信号,mrdslf为边沿触发锁存器使能信号,rxd7:0是并行数据输出信号,rdrdyf是并行数据准备好信号。该部分电路工作时,首先在时钟信号(rbitclk)的作用下,串行数据(rxdata)被串入并出移位寄存器转化为并行数据;同时,控制模块2在行计数控制下,在一帧串行数据到并行数据转换完成时,使边沿触发锁存器使能信号mrdslf有效;之后,在控制模块产生的时钟信号的作用下将并行数据锁存到锁存器,同时,使并行数据准备好信号(rdrdyf)有效。
2 异步串行收发器的具体实现
硬件电路功能来用lattice公司的cpld来实现,用isplever3.0 进行软件设计。可利用原理图和硬件描述语言vhdl完成源文件的设计。以下对其cpld流程源文件及仿真波形作以介绍。
2.1 用isplever软件设计cpld的流程
lattice公司新的设计工具isplever可支持isp-mach、 isplsi、 ispgdx、 ispgal、 gal器件以及具有革新意义的新的ispmach 5000vg和ispmach 4000 cpld器件系列。用isplever设计cpld的源文件主要有硬件描述语言(vhdl、verilog hdl和able-hdl)、电路原理图和网表五种方式。在利用该软件设计数字电路与系统时,可采用原理图、硬件描