曼彻斯特编解码器.doc
文本预览下载声明
工具软件实训报告
项目名称: 曼彻斯特编解码器
指导老师:
系 科:
专 业:
姓 名:
学 号:
目录:
一:实训要求 3
二:实训原理 3
三:实训思路 4
四:实训步骤 4
五:原理图、仿真结果图以及结论分析 5
1.曼彻斯特编解码器(实现16bit数据的编解码) 5
1.1曼彻斯特编解码器电路原理图: 5
1.2模块详解 6
1.3仿真图以及分析 10
六:个人总结.............................................................................11
一:实训要求
(1)通过学习原理图输入设计的方法掌握使用工具软件Quartus Ⅱ设计小型数字电路;
(2)查阅文献,了解曼彻斯特编解码器的基本原理, 并提出在Quartus Ⅱ软件环境下用VHDL进行仿真的方案。
(3)完成设计对编码器的要求:能够对输入的16bit数据进行曼彻斯特编码,输入有时钟、使能、16bit并行数据、写信号等;输出有编码结束和曼彻斯特编码信号(都为1位信号)等。
(4)完成设计对解码器要求:能够把输入的串行曼彻斯特码解码成原先的并行数据,输入有时钟、曼彻斯特码输入(1bit)、使能信号等,输出有提取的同步时钟信号、解码完成(1bit),并行数据(16bit)等。
二:实训原理
曼彻斯特编码,也叫做相位编码(PE),是一个同步时钟编码技术,在以太网媒介系统中,被物理层使用来编码一个同步位流的时钟和数据。它的每一个数据比特都是由至少一次电压转换的形式所表示的。在曼彻斯特编码中,每一位的中间有一跳变,位中间的跳变既作为时钟信号,又作为数据信号。按照曼彻斯特码在IEEE?802.4(令牌总线)以及IEEE?802.3?(以太网)中的规定,本次实训将从高电平到低电平的跳变表示“0”,从低电平到高电平的跳变表示“1”。
三:实训思路
以下为曼彻斯特编解码器的实现框图:
有上图可知,此次的曼彻斯特编解码电路包括三个部分:信号产生部分、编码电路部分和解码电路部分。其中,信号产生部分用来产生一个循环的16位二进制数据编码作为普通的信号输入;编码部分则将输入的信号编码为曼彻斯特码,然后输出显示;解码部分负责将获得的曼彻斯特码解码成普通的二进制数据编码。三个相对独立的模块相互协同工作,共同完成曼彻斯特编解码的工作。?
四:实训步骤
(1)建立工程;
(2)编写VHDL文件,建立目标器件;
(3)绘制电路原理图并编译;
(4)进行仿真以及分析仿真后的波形文件;
(5)完成实训报告。
五:原理图、仿真结果图以及结论分析
1.曼彻斯特编解码器(实现16bit数据的编解码)
1.1曼彻斯特编解码器电路原理图:
1.2模块详解
1.2.1分频器模块
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity clks is
port(clk:in std_logic; --基准时钟
clk0,clk1,clk2:buffer std_logic); --分频出的三个时钟,分别输入循环编
--码模块、曼彻斯特编码模块、曼彻斯特解码模块
end clks;
architecture behav of clks is
signal a:integer:=0;
signal b:integer:=0;
begin
process(clk)
begin
clk0=clk;
end process;
process(clk)
begin
if clkevent and clk=1 then
if a=2 then
a=0;clk1=1;
else
a=a+1;clk1=0;
end if;
end if;
end process;
process(clk)
begin
if clkevent
显示全部