• 我要做CPU_3


    我要做CPU_3

    1.中断优先级同步信号

    此同步信号和一个叫GPIO_DEBOUNCE_EN的宏定义有关系,如果没有使能,前端gpio接收到大数据直接传入int_level_sync_in,如果宏定义使能,则int_level_sync_in的每一位是分开控制的,并且和一个debounce_d2的寄存器有关系。

     

     2.generate_if语句

    再进行下一步之前,我们先要学习generate_if语句的语法。generate_for用于复制模块,而generate_if则是根据模块的参数(必须是常量)作为条件判断,来产生满足条件的电路。相当于判断语句。

     

    接下来我们会分析一个很大的generate_if语句块。

    如果消抖宏定义开启,将执行SUPPORT_DEBOUNCE_PROC块语句。

     如果宏定义未开启,则执行NO_SUPPORT_DEBOUNCE_PROC块语句。

     

     

    如果开启了宏定义:

    首先消抖时钟有一个复位信号,复位期间,缓存输入数据的寄存器会清零。

     

     输入数据直接缓存在gpio_rx_data_int_tmp寄存器中。

     

     不太明白为什么要这么做一个复位信号,暂且就认为是对输入数据的消抖处理吧,等9700K来了再做仿真吧。

     

     以下是对其它bit数据位相同的操作。

     

     

     

     将得到的debounce_d1再打一拍,便完成了端口数据的采集。

     

     本文除了要完成对消抖模块的仿真外,接下来还需要对dbclk,dbclk_rstn,scan_mode等信号的探究。

  • 相关阅读:
    Silverlight分享一套企业开发主题
    [Silverlight]常见问题
    Silverlight开发工具汇总
    ExecuteNonQuery返回负数
    Silverlight客户端调用WCF服务难题解疑
    winform调用WCF默认实例
    WCF默认实例的解读
    Silverlight闹钟
    HelloSilverlight
    读取Word文档的标题
  • 原文地址:https://www.cnblogs.com/chensimin1990/p/12517406.html
Copyright © 2020-2023  润新知