在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: ic7x24

[原创] 【不忘出芯】一起学Verilog

[复制链接]
 楼主| 发表于 2019-5-5 08:54:19 | 显示全部楼层
【007:串并变换】


1. 复习verilog语法

- 文件操作fopen fdisplay fwrite fclose
- 生成随机数 random
- 初始化 readmemh readmemb
- finish stop


2. 用verilog实现串并变换。
  input [3:0] data_in;
  output [3:0] data_out;
  input [1:0] mode;
  input load;

  input clk;
  input rst_n;

mode 0 :串行输入data_in[0],并行输出data_out[3:0]
mode 1 :并行输入data_in[3:0],串行输出data_out[0]
mode 2 :并行输入data_in[3:0],并行输出data_out[3:0],延迟1个时钟周期
mode 3 :并行输入data_in[3:0],并行反序输出data_out[3:0],延迟1个时钟周期并且交换bit顺序
data_out[3]=data_in[0];
data_out[2]=data_in[1]
data_out[1]=data_in[2]
data_out[0]=data_in[3]

附加要求:将输入输出的位宽做成参数化


3. 记录一下第2题中用到的工具,包括工具版本,操作步骤或命令选项,遇到的错误,提示信息等。
 楼主| 发表于 2019-5-7 21:44:42 | 显示全部楼层
[008:计数器]


1. 用verilog实现一个4bit二进制计数器。
a) 异步复位
b) 同步复位
input clk, rst_n;
output [3:0] o_cnt;

2. 用verilog实现4bit约翰逊(Johnson)计数器。

3. 用verilog实现4bit环形计数器:复位有效时输出0001,复位释放后依次输出0010,0100,1000,0001,0010...

4. 比较一下以上三种计数器的特点。

5. 记录1,2,3题目使用的工具,操作步骤,以及出现的错误和提示信息。

 楼主| 发表于 2019-5-9 20:16:34 | 显示全部楼层
[009: 按键防抖]

1. 用verilog实现按键抖动消除电路,抖动小于15ms,输入时钟12MHz。

2. 记录题目1中用到的工具,操作步骤,遇到的错误和提示信息。
 楼主| 发表于 2019-5-11 08:28:34 | 显示全部楼层
[010: PWM]

用verilog实现PWM控制呼吸灯。呼吸周期2秒:1秒逐渐变亮,1秒逐渐变暗。系统时钟24MHz,pwm周期1ms,精度1us。
发表于 2019-5-11 16:02:44 | 显示全部楼层
谢谢分享
发表于 2020-3-1 11:32:54 | 显示全部楼层
给大佬点赞!
发表于 2020-3-2 09:41:55 | 显示全部楼层
kan kan !
发表于 2021-4-2 09:36:53 | 显示全部楼层
非常感谢!
发表于 2023-10-31 15:04:59 | 显示全部楼层
mark 一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-28 20:55 , Processed in 0.023735 second(s), 5 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表