阅读verilog程序总结
1、写程序先直接写出时钟信号
//-----------------产生串行时钟scl,为输入时钟的二分频---------
always@(negedge clk)//二分频表示频率小了,周期大了
if(reset)
scl<=;
else
scl<=~scl;
2、然后直接写主状态程序
always@(posedge clk)
if(reset)//复位
begin
link_read<=no;//各大开关信号关闭
link_head<=no;
link_write<=no;
link_stop<=no;
link_sda<=no;
ack<=;
rf<=;//各大标志位赋值
wf<=;//写状态标志位
ff<=;//寄存器标志位
main_state<=idle;//主状态进入空闲了
end
else
begin
casex(main_state)
idle://空闲状态也是要空闲
begin
link_read<=no;//各大开关
if(wr)//写信号
begin
wf<=;
main_state<=ready;
end
else if(rd)//读信号
begin
rf<=;//
main_state<=ready;
end
else
begin
wf<=;
rf<=;
main_state<=idle;
end
end
ready:
begin
head_state<=head_begin;
ff<=;
ack<=;
main_state<=write_start;
end
write_start:
begin end
3、写程序的过程中每一个根线都应该是加上寄存器和标志位和开关。
1)输出和输入:加寄存器
2)输入输出是否完成:加标志位
3)未完待续。。。。。。。。。。。。。。。
阅读verilog程序总结的更多相关文章
- 阅读c#程序——回答问题
c#“小”程序: using System; using System.Collections.Generic; using System.Text; namespace FindTheNumber ...
- 微信小程序-阅读小程序demo
今天和朋友聊天说到小程序,然后看在看书,然后我们就弄了个小读书的demo,然后现在分享一下. 一.先来上图: 二.然后下面是详细的说明 首先先说下边的tabBar,项目采用json格式的数据配置,不 ...
- sobel流水线操作Verilog程序
sobel算子的verilog实现,采用了流水线操作 module sobel_computer ( clock , reset, OrigDataEn, //SobelAluEn, OrigData ...
- Java阅读word程序说明文件
完成office文件操作可以帮助apache.poi包(我用poi-3.10-FINAL),导入对应的jar包(最好所有导入) 以下的程序演示了一些操作word的过程,具体的函数功能能够查看此包的官方 ...
- 第一个Verilog程序:通用加法器
Verilog作为一门硬件描述语言,快速掌握它的方法就是不断的练习,反复动手实践,通过例子掌握隐藏在语句背后的硬件电路.下面是第一个需要学习的Verilog例子: )( :] a, :] b, inp ...
- 写verilog程序需要注意的地方
1.在always块语句中一定要注意if-else if-else if-else的判断条件的顺序. 2.同一个寄存器信号只能在同一个always or initial 块中进行赋值. 3.在控制一个 ...
- Verilog HDL的程序结构及其描述
这篇博文是写给要入门Verilog HDL及其初学者的,也算是我对Verilog HDL学习的一个总结,主要是Verilog HDL的程序结构及其描述,如果有错,欢迎评论指出. 一.Verilog ...
- 阅读程序 回答问题——FindTheNumber
阅读程序 回答问题——FindTheNumber 阅读下面程序,请回答如下问题:问题1:这个程序要找的是符合什么条件的数?问题2:这样的数存在么?符合这一条件的最小的数是什么?问题3:在电脑上运行这一 ...
- C#代码分析--阅读程序,回答问题
阅读下面程序,请回答如下问题: 问题1:这个程序要找的是符合什么条件的数? 问题2:这样的数存在么?符合这一条件的最小的数是什么? 问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间 ...
随机推荐
- 解决Linq第一次调用存储过程时速度慢的问题
最近做项目,发现linq调用存储过程,第一次时会速度慢,但之后速度都很快,过一阵子又会慢一下,以实际的操作为例子: using (FruitDbDataContext dbo = new FruitD ...
- C/C++中产生随机数
可以使用srand()函数和rand()函数来产生随机数,其中srand()用来初始化随机数种子,rand()用来产生随机数.因为默认情况下随机数种子为1,而相同的随机数种子产生的随机数是一样的,失去 ...
- css定义表格样式
table.gridtable { font-family: verdana,arial,sans-serif; font-size:11px; color:#333333; border-width ...
- 查找Safari相关迹证
日前有取证的同好提及Safari,想了解详细步骤,因而在此再补充说明相关. 除了Winodws外,Mac OS X也有为数不少的使用者,以下便以OS X自带的Safari浏览器为例,来查看有哪些重要迹 ...
- 轻松入门React和Webpack
最近在学习React.js,之前都是直接用最原生的方式去写React代码,发现组织起来特别麻烦,之前听人说用Webpack组织React组件得心应手,就花了点时间学习了一下,收获颇丰 <!-- ...
- 自动发送EMAIL
*&---------------------------------------------------------------------* *& Report ZPP_SEND ...
- basis基本tcode
SM21 ST11 SM50 查看work process 使用情况 操作相关的查询功能 SM## 常用tcode SM01 锁定事务 SM04 用户清单 SM05 HTTP ...
- C#处理Excel
C#处理Excel C#处理Excel 前言 OleDb 具体操作 NPOI 具体操作 Excel C# NPOI OleDb 前言 最近需要对Excel进行加密解密操作,本身是一个简单的事情,通过 ...
- Python开发的3种命令执行方法
在python开发中,我们常常需要执行命令,修改相关信息.那对于初学者来说,python中如何执行命令呢?今天,小编就为大家分享3种python命令执行的方法. 1. 使用os.system(&quo ...
- 5.21_启程日本二面_1 vs 1
昨天上午刚群面完,晚上7点左右就接到了电话.面试官就两位菇凉,看来她们也是很辛苦.今天下午3点 1 vs 1,在一家咖啡店里,主要是询问下去日本的意愿是否足够强烈.太老实,这里实话实说,也没有表现出非 ...