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程序总结的更多相关文章

  1. 阅读c#程序——回答问题

    c#“小”程序: using System; using System.Collections.Generic; using System.Text; namespace FindTheNumber ...

  2. 微信小程序-阅读小程序demo

    今天和朋友聊天说到小程序,然后看在看书,然后我们就弄了个小读书的demo,然后现在分享一下. 一.先来上图: 二.然后下面是详细的说明  首先先说下边的tabBar,项目采用json格式的数据配置,不 ...

  3. sobel流水线操作Verilog程序

    sobel算子的verilog实现,采用了流水线操作 module sobel_computer ( clock , reset, OrigDataEn, //SobelAluEn, OrigData ...

  4. Java阅读word程序说明文件

    完成office文件操作可以帮助apache.poi包(我用poi-3.10-FINAL),导入对应的jar包(最好所有导入) 以下的程序演示了一些操作word的过程,具体的函数功能能够查看此包的官方 ...

  5. 第一个Verilog程序:通用加法器

    Verilog作为一门硬件描述语言,快速掌握它的方法就是不断的练习,反复动手实践,通过例子掌握隐藏在语句背后的硬件电路.下面是第一个需要学习的Verilog例子: )( :] a, :] b, inp ...

  6. 写verilog程序需要注意的地方

    1.在always块语句中一定要注意if-else if-else if-else的判断条件的顺序. 2.同一个寄存器信号只能在同一个always or initial 块中进行赋值. 3.在控制一个 ...

  7. Verilog HDL的程序结构及其描述

    这篇博文是写给要入门Verilog HDL及其初学者的,也算是我对Verilog  HDL学习的一个总结,主要是Verilog HDL的程序结构及其描述,如果有错,欢迎评论指出. 一.Verilog ...

  8. 阅读程序 回答问题——FindTheNumber

    阅读程序 回答问题——FindTheNumber 阅读下面程序,请回答如下问题:问题1:这个程序要找的是符合什么条件的数?问题2:这样的数存在么?符合这一条件的最小的数是什么?问题3:在电脑上运行这一 ...

  9. C#代码分析--阅读程序,回答问题

    阅读下面程序,请回答如下问题: 问题1:这个程序要找的是符合什么条件的数? 问题2:这样的数存在么?符合这一条件的最小的数是什么? 问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间 ...

随机推荐

  1. tech

    流式计算框架storm.spark.genfire.esper(CEP)

  2. JavaScript 性能优化1

    一直在学习javascript,也有看过<犀利开发Jquery内核详解与实践>,对这本书的评价只有两个字犀利,可能是对javascript理解的还不够透彻异或是自己太笨,更多的是自己不擅于 ...

  3. (笔记)angular 的hover事件

  4. Completely change MACE timestamps?

    Hi, One of my friends Sandy asked me about the possibility of completely change MACE timestamps. As ...

  5. linux mysql开启远程链接

    x:\>mysql -u root -pvmware mysql> use mysql; mysql> update user set host = ‘%’ where user = ...

  6. 基本的Web控件一

    ASP.NET提供了与HTML元素相对应的基本Web控件,ASP.NET提供的基本的Web控件如下: 基本的Web控件       对应的HTML元素 Label  ----------------- ...

  7. 无法运行maven项目

    tomcat Server Location 选择 User Tomcat installation 设置CATALINA_HOME环境变量(tomcat start.bat启动不了)1.CATALI ...

  8. Vue.js学习 Item14 – 过滤器与自定义过滤器

    基础 类似于自定义指令,可以用全局方法 Vue.filter() 注册一个自定义过滤器,它接收两个参数:过滤器 ID 和过滤器函数.过滤器函数以值为参数,返回转换后的值: Vue.filter('re ...

  9. delphi TFileStream.create

    Value  Meaning  fmCreate Create a file with the given name. If a file with the given name exists, op ...

  10. mongodb 3.2存储目录结构说明

    [root@hadoop1 mongodb]# tree ./data ./data |-- WiredTiger | |-- WiredTiger.lock | |-- WiredTiger.tur ...