manchester
3星 · 超过75%的资源 需积分: 0 91 浏览量
更新于2013-06-23
1
收藏 21KB DOC 举报
verilog语言描述
module bianma(din,rst,clk16x,clk96,start,tx,sr,state,clk_en,man);
input rst,clk16x,start;
input[7:0] din;
output tx,clk96,sr,state,clk_en,man;
模块`bianma`是用Verilog语言编写的,它的主要功能是实现曼彻斯特编码(Manchester Encoding)。在数字通信中,曼彻斯特编码是一种时钟数据恢复和同步的方法,它通过将每个数据位的边界与相应的电平变化相对应来编码数据。这种编码方式在本地时钟和接收端之间提供了一种内在的同步机制。
模块`bianma`有以下输入和输出:
- 输入:
- `rst`: 重置信号,用于初始化内部状态。
- `clk16x`: 一个16倍的时钟输入,用于生成曼彻斯特编码所需的时钟频率。
- `start`: 开始信号,当该信号有效(高电平)时,模块开始编码过程。
- `din[7:0]`: 8位数据输入,需要被编码的数据。
- 输出:
- `tx`: 编码后的曼彻斯特编码数据输出。
- `clk96`: 生成的96分频时钟,即`clk16x`的96分之一,用于驱动编码过程。
- `sr[7:0]`: shift register,内部移位寄存器,存储待编码的数据。
- `state[3:0]`: 状态机的状态,指示当前处于编码过程中的哪个阶段。
- `clk_en`: 时钟使能信号,控制编码是否进行。
- `man`: Manchester编码标志,表示当前时钟周期内是否有电平翻转。
模块的主要逻辑分为以下几个部分:
1. **分频器**:使用`always @(posedge clk16x)`语句定义了一个分频器,通过计数器`cnt`将`clk16x`分频为`clk96`。当`cnt`达到7时,`clk96`的值取反,实现了96分频。
2. **时钟使能逻辑**:`always @(negedge clk16x or negedge start or posedge rst)`块处理`clk_en`的控制。在`rst`低电平时,`clk_en`被置为0;在`start`信号有效且非重置状态下,`clk_en`被置为1;当状态机处于12(二进制4'd12)时,`clk_en`被置为0,以停止编码。
3. **曼彻斯特编码**:`always @(negedge clk96 or posedge rst)`块完成曼彻斯特编码。在`rst`低电平时,`tx`被置为1,`sr`清零。根据状态机的不同状态,`tx`的值由`sr`中的数据或固定值决定,并且`sr`会按照曼彻斯特编码的规则进行移位。同时,`man`信号被设置为`tx`和`clk96`的异或结果,表示当前时钟周期内是否存在电平翻转。
4. **状态机**:`always @(posedge clk96 or posedge rst or negedge clk_en)`块定义了一个4位的状态机,`state`在不同状态之间进行转换,控制整个编码过程。在`rst`或`clk_en`无效时,状态重置为0,否则状态自动加1,循环执行编码过程。
这个模块可以作为一个独立的组件,用于将输入的8位数据`din`编码成曼彻斯特编码的串行数据`tx`,同时提供了与编码过程相关的辅助信号如`clk96`, `sr`, `state`, `clk_en`, 和 `man`。在实际应用中,可能需要结合其他模块(如串并转换器、接口控制器等)一起工作,实现完整的串行通信系统。
u011177288
- 粉丝: 0
- 资源: 2
最新资源
- 跨平台剪贴板交互工具Clipper:基于Clipper适配Android15
- code编译器系列的认证码,以便使用pro版
- 基于powerworld风电场仿真与计算
- 自研burpsuite请求响应体查询敏感信息 jar
- cgScreen 实时视频web265 js资源
- Python毕业设计基于机器视觉实现昆虫识别计数系统源码+数据集+模型+论文
- 基于PLC+仿真实现的(玻璃冲洗+十字路口交通灯控制)模型及组态
- DotweenPro最新版插件 DOTween Pro 1.0.381
- 电子商务数据集,产品数据数据集(包括产品类别、图片、价格、卖家等信息)数据来自多个电子商务网站
- 基于MATLAB搭建的准Z源NpC三电平逆变器拓扑,利用SVPWM调制算法,加入了中性点平衡算法,该算法自己提的,有创新,给出了线电压和相电压波形
- 毕业设计Python基于机器视觉实现昆虫识别计数系统源码+数据集+模型+论文
- 项目参考MATLAB BP的交通标志系统(第28期).zip
- 项目参考MATLAB BP的水果识别(第28期).zip
- 项目参考MATLAB BP神经网络的火焰识别(第28期).zip
- 2025年简约西式现在婚礼邀请函模板.pptx
- 2025年西式红色婚礼邀请函模板.pptx