CMI码码型变换

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基带码型变换设计—CMI码码型变换
1. 技术指标
1)设计CMI码的编译码电路。

2)输入信号为24位的周期NRZ码。

3)编译码延时小于3个码元宽度。

2. 基本原理
2.1 CMI码
2.1.1 CMI码简介
CMI码又称传号反转码,是一种二电平非归零码。

其中,“0”码用“01”码表示,“1”码用交替的“00”、“11”表示。

这种码型的优点是:1)不存在直流分量,且低频分量较小;2)信息码流中具有很强的时钟分量,便于从信号中提取时钟信息;3)具有一定的检错能力;4)电路简单,易于实现;5)传输速率为编码前的2 倍,适用于低速率的光纤传输系统。

2.1.2 CMI码编码原理
根据上边所述CMI可知,首先要把过来的NRZ码流中的“0”和“1”码分开,然后分别进行编码。

通过时钟的控制,将“0”码编译为“01”,“1”码交替编译为“00”、“11”。

2.1.3 CMI译码原理
译码电路中也要有码分离电路,将过来的CMI码流两两分为高位码和低位码,然后进行异或判决,从而得到译码输出。

2.2 MaxplusⅡ软件
MaxplusⅡ是Altera公司提供的FPGA/CPLD开发继承环境。

MaxplusⅡ界面友好,使用便捷,可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程。

它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。

本实验利用MaxplusⅡ软件进行原理图的输入、功
能仿真等。

2.3 CPLD
CPLD(Complex Programmable Logic Device),即复杂可编程逻辑器件,一种较PLD为复杂的逻辑元件,是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。

其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆将代码传送到目标芯片中,实现设计的数字系统,具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、对设计者的硬件经验要求低和保密性强等优点。

本实验利用EPM7128SLC84-15 CPLD芯片进行仿真和实践操作。

3. 设计方案及功能分析
3.1 方案一
图3.1 方案一编码电路
功能分析:本方案编码电路利用具有记忆功能的JK触发器来实现“1”码编译中“00”与“11”的交替变换。

如图,NRZ码流经过图中的D触发器后,
如果是“0”码,BS时钟上升沿,Q输出端经过非门(即Q)与时钟上升沿经Q
非一起通过与门,输出为0,Q输出端与JK触发器输出端相与,输出为0,两者异或,输出为“0”;BS时钟下降沿,同理异或门输出“1”,最后经2BS时钟控制的D触发器,输出“01”,“0”码编译完毕。

如果是“1”码,第一次若输出“00”码,当再次输入“1”码,由于JK触发器的记忆功能,反相输出“11”,以此交替出现。

图3.2 方案一译码电路
功能分析:利用BS时钟信号和非门,将输入的CMI码高低位码分离。

两路码经由异或门和非门进行判定,如果两位码相同,则最后还原为“1”码,如果,两位码不同,则最后还原为“0”码。

3.2 方案二
图3.3 方案二M序列产生电路
功能分析:如图1 以四级(N = 4) 移位寄存器构成周期为n = 2n - 1 = 15 的m 序列伪随机数产生器,本原多项式为f (x) = 1 + x + x4 。

利用此电路,产生m 序列码,可将“1”码分成奇偶两部分。

图3.4 方案二CMI码编码电路
功能分析:输入m序列的码,类似于方案一中JK触发器的功能,便于将“1”
码交替编译为“00”“11”。

“0”码编译同方案一,编译为“01”
图3.5 方案二CMI译码电路
功能分析:除去个别元件略有改变,其工作原理与方案一中译码电路基本相同。

3.3 方案三
运用VHDL硬件描述语言对CM I编码与解码电路进行设计与仿真。

其部分CM I编码电路的部分VHDL源代码如下:
process ( clk, nrz_in )
begin
if ( clk’event and clk= ‘1’) then
if ( nrz_in= ‘1’and flag= ‘1’) then
cmi_out< = " 00";
flag< = ‘0’;
else if ( nr z_in= ‘1’and flag= ‘0’) then
cmi_out< = " 11";
flag< = ‘1’;
else cmi_out< = "01";
end if;
end if;
end process;
功能分析:CM I编码电路根据输入时钟CLK 对输入的基带信号nrz_ in
进行CM I编码。

CM I解码电路的部分VHDL源代码如下:
process ( clk, cmi_ in)
begin
if ( clk’event and clk=‘1’) then
if ( cmi_in=" 00"or cmi_in=" 11") then
nrz_out< = ‘1’;
else nrz_out< = ‘0’;
end if;
end if;
end process;
功能分析: CM I解码电路则根据同步时钟对输入的CM I码进行解码, 还原为所需要的基带信号。

3.4 方案比较及实现方案
3.4.1 三种方案比较
方案一、二均是用原理图的方式进行编译码设计,运用了模、数电知识,简洁明了,易于纠错。

方案三是运用VHDL硬件描述语言对CM I编码与解码电路进行设计,VHDL语言虽容易上手,但短时间内无绝对把握编程成功。

因此,选择用原理图的方式设计。

比较方案一和方案二,前者电路图只由编码电路和译码电路组成,后者多了一个m序列电路,前者更为简单易懂。

综上所述,选择方案一作为本次课程设计的实现方案。

3.4.2 实现方案
将方案一的编译码电路合为一个整体,如下图所示
图3.6 实现方案的CMI编译码电路
工作原理:见方案一。

3.4.3 实现方案中各元件引脚与功能
3.4.3.1 D 触发器
S D :预置端端,低电平有效;
R D :清零端,低电平有效;
D :信号输入端;
CP :脉冲输入端,上升沿触发; Q :输出端;Q :反相输出端;
图3.7 D 触发器
表1 D 触发器真值表
CP D Q
n+1
0 X Q n 1 0 0 1
1
1
特征方程:Q
n+1
=D
3.4.3.2 JK 触发器
S D :预置端端,低电平有效
R D :清零端,低电平有效;
J ,K :信号输入端;
CP :脉冲输入端,下降沿触发; Q :输出端;Q :反相输出端;
图3.8 JK 触发器
表2 JK 触发器真值表
J K Q Qn+1
0 0 X 保持
0 X X 0
1 X X 1
1 1 1 翻转
图3.9 非门图3.10 与门图3.11 或门图3.12 异或门Y=A Y=A·B Y=A+B Y=A⊙B
(设输入为A、B,输出为Y)
4. CPLD时序和功能仿真
根据MaxplusⅡ软件的使用方法,其过程框图为:
图4.1 编译
画原理图锁管脚编译仿真观察波形图
修改原理图
图4.2 仿真
图4.3 波形图5. 硬件电路调试
图5.1 NRZ码与CMI码
图5.2 NRZ码与OCMI码
6. 结论
7. 心得体会
8. 参考文献
【1】舒凯. CMI编码解码电路的EDA设计[J]. 台声.新视角, 2005,(04)
【2】陈适,綦晓华. 基于CPLD的CMI编解码电路的设计与实现[J]. 武汉理工大学学报(信息与管理工程版), 2010,(01)
【3】徐海英,陆颖,姚建铨,王鹏. CMI编译码电路的设计[J]. 科学技术与工程, 2007,(15)
【4】/view/1148d9c758f5f61fb73666a7.html Max-plusⅡ原理图输入方法
附录
思考题。

相关文档
最新文档