1、Soc读写是如何实现的?

读有效: mem_rd   读写地址:mem_rw_addr, 读取的数据mem_rd_dat, 读取数据有效:mem_rd_datvld, 写有效 mem_wr, 写数据mem_wr_dat

2、读清是如何实现的?

代码中data_err_dy实现了读清功能,data_err:1表示有效,存在错误数据,在mem总线读取之前,data_err_dy一直保持为1,mem总线读取后,将data_err_dy清零。

module soc_mem_wr
(input                   soc_clk              ,input                   soc_rst_n            ,input                   mem_rd               ,input                   mem_wr               ,input       [9:0]       mem_rw_addr          ,input       [31:0]      mem_wr_dat           ,output  reg [31:0]      mem_rd_dat           ,output  reg             mem_rd_datvld        ,input                   data_err             ,output  reg             send_data_enable     ,output  reg             data_down_req   );reg     data_err_dy  ;always @ (posedge soc_clk or negedge soc_rst_n) beginif(!soc_rst_n)beginsend_data_enable   <= 1'b0;  data_down_req <= 1'b0 ;end else beginif(mem_wr)case(mem_rw_addr)10'h0 :  send_data_enable  <= mem_wr_dat[0] ;10'h1 :  data_down_req     <= mem_wr_dat[0] ;default : ;endcaseendalways @ (posedge soc_clk or negedge soc_rst_n) beginif(!soc_rst_n)mem_rd_datvld    <=  1'b0   ;elsemem_rd_datvld    <=  mem_rd ;always @ (posedge soc_clk or negedge soc_rst_n) beginif(!soc_rst_n)mem_rd_dat   <= 32'b0;  else if(mem_rd)case(mem_rw_addr)10'h0   :  mem_wr_dat       <= {31'b0,send_data_enable  } ;10'h1   :  mem_wr_dat       <= {31'b0,data_down_req     } ;10'h2   :  mem_wr_dat       <= {31'b0,data_err_dy       } ;default :  mem_wr_dat       <= 32'hffff_ffff              ;endcaseend//读清是如何实现的always @ (posedge soc_clk or negedge soc_rst_n) beginif(!soc_rst_n)data_err_dy   <= 1'b0;  elsedata_err_dy   <= (mem_rd&(mem_rw_addr==10'h2))? 1'b0 :data_err_dy ? data_err_dy : data_err ;endmodule

IC设计基础001:寄存器读写,读清是如何实现的相关推荐

  1. UEFI开发历程2—基于SuperIO芯片的寄存器读写

    一.SuperIO介绍 目前市面上的主流SuperIO芯片有NCT.ITE等厂商的生产的芯片,本文主要针对IT8613E这款芯片的逻辑设备寄存器的读写进行介绍. IT8613E主要用来连接外部低速设备 ...

  2. 2.3 Openwrt 模拟 spi 及其sx1301寄存器读写测试

    本节提示:本节所需环境:ubuntu 16 / 18工具:VScode.Cmake.openwrt 交叉编译器 2.3 Openwrt 模拟 spi 及其sx1301寄存器读写测试 通过前面两章节的操 ...

  3. vivado的vio怎么使用_使用VIVADO中VIO模拟CPU接口进行在线寄存器读写调试(附源代码)...

    debug,尤其是通信芯片的debug,可以有很多的方法.一个数据帧从进入到输出,可以在通路上的关键节点处设置监测如各种计数器等,可通过VIO(xilinx)定时上报实时状态.可以把VIO的各个信号线 ...

  4. 【Android 逆向】ptrace 函数 ( ptrace 函数族 | 进程附着 | 进程脱离 | 进程数据读写权限 | 进程对应的主线程寄存器读写 | 单步调试 |ptrace 函数族状态转换 )

    文章目录 一.ptrace 函数族 1.进程附着 2.进程脱离 3.进程数据读写权限 4.进程对应的主线程寄存器读写 5.单步调试 6.继续向后执行 二.ptrace 函数族状态转换 一.ptrace ...

  5. LPS25HB 寄存器读写程序解读

    文章目录 LPS25HB 寄存器读写程序解读 1.读写功能的统一接口函数 2.设计结构体函数指针来调用统一的读写函数 3.与通信方式无关的寄存器读写抽象函数接口 LPS25HB 寄存器读写程序解读 一 ...

  6. 2021-07-04 寄存器读写

    1. 往寄存器里 写值 再读值 typedef uint8_t u8; typedef uint16_t u16; typedef uint32_t u32; 往寄存器里 写值 void reg_wr ...

  7. 硬件工程师面试集锦 模拟电路 数字电路 IC设计基础 单片机 信号与系统 DSP 嵌入式

    模拟电路   1.基尔霍夫定理的内容是什么?(仕兰微电子)   2.平板电容公式(C=εS/4πkd).(未知)   3.最基本的如三极管曲线特性.(未知)   4.描述反馈电路的概念,列举他们的应用 ...

  8. (转)硬件工程师面试集锦 模拟电路 数字电路 IC设计基础 单片机 信号与系统 DSP 嵌入式

    模拟电路  1.基尔霍夫定理的内容是什么?(仕兰微电子)  2.平板电容公式(C=εS/4πkd).(未知)  3.最基本的如三极管曲线特性.(未知)  4.描述反馈电路的概念,列举他们的应用.(仕兰 ...

  9. 8.裸板--C语言下的寄存器的读写置位清零操作

    从CPU的角度来看,外设的寄存器跟通用寄存器操作一样,对它们的地址进行读写移位等操作即可进行配置读取写入等动作. 通用寄存器有15个 寄存器名字 Reg# APCS 意义 R0 a1 工作寄存器 R1 ...

最新文章

  1. 剑指OFFER之数组中出现次数超过一半的数字(九度OJ1370)
  2. datagridview控件的使用
  3. Openwrt 软件安装源
  4. SAP License:制造企业信息化新动向
  5. 【转】Java 8十个lambda表达式案例
  6. Eclipse中Tab的配置(设置为按一下Tab键,效果是按4次空格,而不是4个空格的缩进)
  7. 【转】NSBundle的使用,注意mainBundle和Custom Bundle的区别
  8. backtrack3安装使用教程
  9. VS2015卸载。非常干净-亲测有用
  10. Lvgl(V8.2)自定义字体实现多国语言切换功能
  11. 【opencv】图片拼接
  12. 谷歌语音合成_如何修改Google语音合成语音
  13. 计算机毕设题目设计与实现(论文+源码)_kaic
  14. SQL SERVER 变量赋值
  15. 同志们,免费版的Ant Design Pro Vue3 来啦
  16. 【网络安全科普】infra工程师 网络科普
  17. Pycharm 简介
  18. PTA旅游规划(迪杰斯特拉算法)
  19. matlab 微分命令 求导,Matlab微分和积分
  20. 一元二次方程求根公式小结

热门文章

  1. Web APIs /APIs --DOM简述/DOM中获取元素方法/事件(含鼠标事件)/操作(含案例)
  2. HTML 中几种常见长度单位介绍
  3. java实现上传zip/rar压缩文件,自动解压
  4. 如何取消Chrome浏览器自动翻译
  5. 了解CSS属性font-kerning,font-smoothing,font-variant
  6. 跨行入测绘,看航测小白如何实现纯免相控作业
  7. 服务器系统盘40g是什么,云服务器 40g系统盘
  8. Python零基础详解--商品详情、关键词搜索api
  9. 基于单片机的盆栽自动浇花系统-毕设课设protues仿真全套资料
  10. 节点本地范围和链路本地范围_802.11协议精读15:链路模型(基于Free-Space Path Loss)...