1、 本科毕业设计 ( 20 届) 基于 VHDL的帧同步系统的设计 所在学院 专业班级 通信工程 学生姓名 学号 指导教师 职称 完成日期 年 月 - 2 - 摘 要 随着科学的发展,通信 技术 日趋完善 ,数字通信系统越来越多的被人们所使用。 抗干扰能力强 ,传输准确率高等特点是数字通信逐 渐取代模拟通信的重要原因。 由于人们对各种通信业务的需求迅速增加,数字通信正向着小型化、智能化、高速大容量的方向迅速发展 。 FPGA( Field Programmable Gate Array),即现场可编程门阵列,它是在 PAL、 GAL、CPLD 等可编程器件的基础上进一步发展的产物。它是作为 专用
2、集成电路 ( ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 本次毕业设计是基于可编程器件的帧同步 。在具体的实现过程中,运用了 Quartus II 的软件平台, 使用了 VHDL 编程语言 。 关键词 : 时分复用; FPGA; Quartus II; VHDL 语言。 - 3 - Abstract With the development of science, communications relay has been improved, digital communication system more and more
3、used by people. Strong anti-jamming capability, transmission accuracy higher characteristic is digital communication gradually replace analog communications important reasons. Because people various communications business demand is increasing rapidly, digital communication is toward miniaturization
4、, intelligent, high-speed high-capacity direction develop rapidly. The FPGA (Programmable Gate Field - Array), namely Field Programmable gates Array, it is in such GAL PAL and Programmable devices, CPLD further development on the basis of the product. It is special integrated circuits (as in the fie
5、ld of ASIC) with a half but appear, custom circuit is settled customization, and overcome lack of the circuit in original programmable device gate number limited shortcomings. In the design, we use the Quartus II software as the compile platform, and use VHDL language to design circuit function. Key
6、words: Multiplex; FPGA; Quartus II; VHDL language。 - 4 - 目 录 第一章 概述 . 1 第二章 EDA 技术介绍 . 2 2.1 FPGA 简介 . 2 2.2 FPGA 编程流程 . 2 2.3 VHDL 语言简介 . 5 2.4 VHDL 语言的优点 . 5 2.5 QuatusII 介绍 . 7 第三章 同步原理 . 9 3.1 同步方法 . 9 3.2 巴克码产生原理 . 10 3.3 复接方式和帧结构 . 12 3.4 E1 帧成型原理 . 15 第四章 方案设计 . 17 第五章 软件设计 . 19 第六章 仿真分析 . 25
7、 结束语 . 28 致谢 . 错误 !未定义书签。 参考文献 . 29 附录一 . 30 第一章 概述 在数字通信中,同步技术是非常关键的技术。基本同步技术包括位(码元)同步,字(码组)同步,载波同步,帧同步(群同步)等。 PCM30/32 系统共分为 32 个路时隙,其中 30 个路时隙分别用来传送 30 路话音信号,一个路时隙用来传送帧同步码,另一个路时隙用来传送信令码。 PCM30/32 系统在发送端按照某一波特率编排成一定的帧结构形成同步数据流,然后送入信道传送,在接收端从信道恢复出来的同步数据流,则需要进一步解调才能提取有用的信息。对于接收端的数据解调,首先要从同步数据流中提取同 步
8、信息,然后提取帧同步信息,而帧同步提取性能的好坏直接影响整个数据的解调质量,甚至影响整个通信系统的性能。因此,帧同步技术在数字通信中有着巨大的作用 1。 编程有 VHDL 语言来完成。 VHDL 能够描述硬件电路的结构、行为与功能。虽然其硬件的相关语法与形式类似于一般程序语言,但是涉及许多与硬件关联的语法结构。 VHDL设计的层次性,即自上而下的结构设计方法适合大型设计工程的分工合作。 VHDL 还是一种实现技术相独立的语言,既不束缚于某一特定的模拟程序或者数字装置上,也不把设计方法强加于设计者,它允许设计者在其使用 范围内选择工艺和方法。 此次 论文先设计一个 TDM30/32 路系统 E1
9、 帧结构信号。我将根据时分复用 (TDMA)的原理,用 QuartusII 软件作为平台设计出信号源,即随机序列;设计不同分频器以产生不同信号时钟,即利用已知频率的晶体振荡器分频得到所需的频率; 论文第二章介绍了 EDA 介绍,了解设计中需要用到的各种软件工具,对 EDA 技术有了全面的了解。第三章介绍了同步技术的原理,重点介绍帧同步技术,初步了解帧同步技术的相关内容。第四章介绍了此次论文的方案设计,绘制原理图。第五章通过原理图编写出相应的代码。第六章运 用 QuartusII 软件进行仿真,验证代码是否正确。 第二章 EDA 技术介绍 2.1 FPGA 简介 FPGA(Field Progr
10、ammable Gate Array)全称现场可编程门阵列,是 1984 年由美国 Xilinx 公司发明的基于 SRAM 工艺以查找表( LUT)为基本单元的新型可编程逻辑器件( PLD)。它是在 PAL、 GAL、 CPLD 等可编程器件的基础上进一步发展的产物。它是作为 专用集成电路 ( ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路 数有限的缺点。 FPGA 可由用户自定义其内部的逻辑和功能,同时又能够进行无限次的重新配置,加上 PC 机上 CAD 辅助设计软件和强大的仿真工具,使得电子设计工程师在办公室或实验室中就可以设计自己的 ASI
11、C 器件,实现用户规定的各种专门用途,极大的增加了电子系统设计的灵活性。目前, FPGA 广泛应用于通信、移动设备、航空航天、自动控制等领域,并有向计算密集型应用发展的趋势。 2.2 FPGA 编程流程 FPGA设计分为设计输入、综合、功能仿真(前仿真)、实现、时序仿真(后仿真)、配置下载等六个步骤,设计流程如 图 2.1所示。下面分别介绍各个设计步骤。 1 设计输入 设计输入是设计者将所要设计的电路以开发软件要求的某种形式表达出来,并输入到计算机中的过程。设计输入包括使用硬件描述语言 VHDL、状态图与原理图输入三种方式。VHDL设计方式是现今设计大规模数字集成电路的最好形式,除 IEEE标
12、准中 VHDL与 Verilog HDL两种形式外,还有各自 FPGA厂家推出的专用语言,如 Quartus下的 VHDL。 VHDL语言描述在状态机、控制逻辑、总线功能方面较强,使其描述的电路能特定综合器(如 Synopsys公司的 FPGA Compiler II或 FPGA Express)作用下以具体硬件单元较好地实现;而原理图输入对于用户来说很直观,它在顶层设计、数据通路逻辑、手工最优化电路等方面具有图形化强、单元节俭、功能明确等特点,另外,在 Altera公司 Quartus软件环境下,可以使用Momory Editor对内部 memory进行直接编辑置入数据。常用方式是以 VHD
13、L语言为主,原理图为辅,进行混合设计以发挥二者各自特色。 2 设计综合 综合是进行可编程逻辑器件设计的一个很重要的步骤,它就是针对给定的电路实现功能和实现此 电路的约束条件,如速度、功耗、成本及电路类型等,通过计算机进行优化处图 2.1 FPGA 设计流程 理,获得一个能满足上述要求的电路设计方案。也就是说,被综合的文件是 VHDL文件(或相应文件等),综合的依据是逻辑设计的描述和各种约束条件,综合的结果则是一个硬件电路的实现方案,该方案必须同时满足预期的功能和约束条件。对于综合来说,满足要求的方案可能有多个,综合器将产生一个最优的或接近最优的结果。因此,综合的过程也就是设计目标的优化过程,最
14、后获得的方案与综合器的工作性能有关。 3 仿真验证 从广义上讲,设计验证包括功能与时序仿真和电路验证 。仿真是指使用设计软件包对已实现的设计进行完整测试,模拟实际物理环境下的工作状况。前仿真是指仅对逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求,仿真过程没有加入时序信息,不涉及具体器件的硬件特性;而在布局布线后,提取有关的器件延迟、连线延时等时序参数,并在此基础上进行的仿真称为后仿真,它是最接近真实器件运行的仿真。 4 设计实现 实现可理解为利用实现工具把逻辑映射到目标器件结构的资源中,决定逻辑的最佳布局,选择逻辑与输入输出功能连接的布线通道进行连线,并产生相应文件(如配置文件与
15、相关报告 )。通常可分为如下五个步骤。 ( 1)转换:将多个设计文件进行转换并合并到一个设计库文件中。 ( 2)映射:将网表中逻辑门映射成物理元素,即把逻辑设计分割到构成可编程逻辑阵列内的可配置逻辑块与输入输出块及其它资源中的过程。 ( 3)布局与布线:布局是指从映射取出定义的逻辑和输入输出块,并把它们分配到 FPGA内部的物理位置,通常基于某种先进的算法,如最小分割、模拟退火和一般的受力方向张弛等来完成;布线是指利用自动布线软件使用布线资源选择路径试着完成所有的逻辑连接。因最新的设计实现工具是时序驱动的,即在器件的布 局布线期间对整个信号通道执行时序分析,因此可以使用约束条件操作布线软件,完
16、成设计规定的性能要求。在布局布线过程中,可同时提取时序信息形成报靠。 ( 4)时序提取:产生一反标文件,供给后续的时序仿真使用。 ( 5)配置:产生 FPGA配置时的需要的位流文件。在实现过程中可以进行选项设置。因其支持增量设计,可以使其重复多次布线,且每次布线利用上一次布线信息以使布线更优或达到设计目标。在实现过程中应设置默认配置的下载形式,以使后续位流下载正常。 5 时序分析 在设计实现过程中,在映射后需要对一个设计的实际功能块 的延时和估计的布线延时进行时序分析;而在布局布线后,也要对实际布局布线的功能块延时和实际布线延时进行静态时序分析。从某种程序来讲,静态时序分析可以说是整个 FPG
17、A设计中最重要的步骤,它允许设计者详尽地分析所有关键路径并得出一个有次序的报告,而且报告中含有其它调试信息,比如每个网络节点的扇出或容性负载等。静态时序分析器可以用来检查设计的逻辑和时序,以便计算各通中性能,识别可靠的踪迹,检测建立和保持时间的配合,时序分析器不要求用户产生输入激励或测试矢量。虽然 Xilinx与 Altera在 FPGA开发套件上拥有时序 分析工具,但在拥有第三方专门时序分析工具的情况下,仅利用 FPGA厂家设计工具进行布局布线,而使用第三方的专门时序分析工具进行时序分析,一般 FPGA厂商在其设计环境下皆有与第三方时序分析工具的接口。 Synopsys公司的 PrimeTi
18、me是一个很好的时序分析工具,利用它可以达到更好的效果。将综合后的网表文件保存为 db格式,可在 PrimeTime环境下打开。利用此软件查看关键路径或设计者感兴趣的通路的时序,并对其进行分析,再次对原来的设计进行时序结束,可以提高工作主频或减少关键路径的延时。与综合过程相似,静态时 序分析也是一个重复的过程,它与布局布线步骤紧密相连,这个操作通常要进行多次直到时序约束得到很好的满足 2。 2.3 VHDL 语言简介 VHDL是 VHSIC( Very High Speed Integrated Circuit) Hardware Descriptions Language的缩写,即高速集成电
19、路的硬件描述语言。 VHDL能够描述硬件电路的结构、行为与功能。虽然其硬件的相关语法与形式类似于一般程序语言,但是涉及许多与硬件关联的语法结构。 VHDL设计的层次性,即自上而下的结构设计方法适合大型设计工程 的分工合作。VHDL还是一种实现技术相独立的语言,既不束缚于某一特定的模拟程序或者数字装置上,也不把设计方法强加于设计者,它允许设计者在其使用范围内选择工艺和方法。 2.4 VHDL 语言的优点 VHDL 主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特点的语句外, VHDL 的语言形式和描述风格与句法十分类似于一般的计算机高级语言。应用 VHDL 进行工程设计的优点
20、很多: ( 1)与其他硬件描述语言相比, VHDL 具有更强的行为描述能力,从而决定了它是系统设计领域最佳的硬件描述语言。 ( 2) VHDL 最 初是作为一种仿真标准格式出现,因此 VHDL 语言既是一种硬件电路描述和设计语言,也是一种标准的网表格式,还是一种仿真语言,具有丰富的仿真语句和库函数。 ( 3) VHDL 的行为描述能力和程序结构决定了它具有支持大规模设计和分解已有设计的再利用功能,满足了大规模系统设计要由多人开发组共同并行工作来实现的市场需要。 ( 4)对于用 VHDL 完成的一个确定的设计,可以利用 EDA 工具进行逻辑综合和优化,并自动地将 VHDL 描述转变成门级网表,生成一个更高效、更高速的电路系统。 ( 5) VHDL 对设计的描述具有相对独立性,设计者可 以不懂硬件结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。 ( 6)由于 VHDL 具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变端口类属参量或函数,就能轻易地改变设计的规模和结构。