东莞网站建设平台培训教育机构

pingmian/2026/1/23 18:03:58/文章来源:
东莞网站建设平台,培训教育机构,扬州做网站的价格,网站开发超链接点击后变色练习九-利用状态机实现比较复杂的接口设计 1#xff0c;任务目的#xff1a;2#xff0c;RTL代码3#xff0c;RTL原理框图4#xff0c;测试代码5#xff0c;波形输出 1#xff0c;任务目的#xff1a; #xff08;1#xff09;学习运用状态机控制的逻辑开关#xff… 练习九-利用状态机实现比较复杂的接口设计 1任务目的2RTL代码3RTL原理框图4测试代码5波形输出 1任务目的 1学习运用状态机控制的逻辑开关并设计出一个比较复杂的接口逻辑 2在复杂设计中使用任务task结构以提高程序的可读性 3加深对可综合风格模块的认识。 下面例子是一个并行数据转换为串行位流的变换器利用双向总线输出。该案例来自于EPROM读写器电路工作的步骤是 1把并行地址存入寄存器 2把并行数据存入寄存器 3连接串行单总线 4地址的串行输出 5数据的串行输出 6挂起串行单总线 7给信号源应答 8让信号源给出下一个操作对象 9结束写操作。 2RTL代码 timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 2023/11/22 10:52:02 // Design Name: // Module Name: writing // Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Revision: // Revision 0.01 - File Created // Additional Comments: // //module writing( rst_n, clk, address, data, sda, ack);input rst_n, clk; input [7:0] data, address;inout sda; // 串行数据的输出或者输入接口 output ack; // 模块给出的应答信号 reg link_write; // link_write决定何时输出reg [3:0] state; // 主状态机的状态字 reg [4:0] sh8out_state; // 从状态机的状态字 reg [7:0] sh8out_buf; // 输入数据缓冲 reg finish_F; // 用以判断是否处理完一个操作对象 reg ack;parameter idle 0; parameter addr_write 1; parameter data_write 2; parameter stop_ack 3;parameter bit0 1; parameter bit1 2; parameter bit2 3; parameter bit3 4; parameter bit4 5; parameter bit5 6; parameter bit6 7; parameter bit7 8;assign sda link_write ? sh8out_buf[7] : 1bz;always(posedge clk) beginif(!rst_n) begin // 复位link_write 0; // 挂起串行总线sh8out_state idle;sh8out_buf 0;state idle;finish_F 0; // 结束标志清零ack 0;endelse case(state)idle: beginlink_write 0; // 断开串行单总线sh8out_state idle;sh8out_buf address; // 并行地址存入寄存器state addr_write; // 进入下一个状态finish_F 0; ack 0;endaddr_write: // 地址的输入if(finish_F 0) shift8_out ; // 地址的串行输出// 任务else beginsh8out_state idle;sh8out_buf data; // 并行数据存入寄存器state data_write;finish_F 0;enddata_write: // 数据的写入if(finish_F 0)shift8_out ; // 数据的串行输出// 任务else beginlink_write 0;state stop_ack;finish_F 0;ack 1; // 向信号源发出应答endstop_ack: begin // 向信号源发出应答结果ack 0;state idle;endendcase endtask shift8_out; // 地址和数据的串行输出 begincase(sh8out_state)idle: beginlink_write 1; // 连接串行单总线立即输出地址或数据的最高位(MSB)sh8out_state bit7;endbit7: beginlink_write 1; // 连接串行单总线sh8out_state bit6;sh8out_buf sh8out_buf 1; // 输出地址或数据的次高位(bit6)endbit6: beginsh8out_state bit5;sh8out_buf sh8out_buf 1;endbit5: beginsh8out_state bit4;sh8out_buf sh8out_buf 1;endbit4: beginsh8out_state bit3;sh8out_buf sh8out_buf 1;endbit3: beginsh8out_state bit2;sh8out_buf sh8out_buf 1;endbit2: beginsh8out_state bit1;sh8out_buf sh8out_buf 1;endbit1: beginsh8out_state bit0;sh8out_buf sh8out_buf 1; // 输出地址或数据的最低位(LSB)endbit0: beginlink_write 0; // 挂起串行单总线finish_F 1; // 建立结束标志endendcase end endtaskendmodule 3RTL原理框图 4测试代码 timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 2023/11/22 10:53:46 // Design Name: // Module Name: writing_top // Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Revision: // Revision 0.01 - File Created // Additional Comments: // //// 测试代码 define clk_cycle 50 module writing_top; reg rst_n, clk; reg [7:0] data, address; wire ack, sda;always #clk_cycle clk ~clk;initial beginclk 0;rst_n 1;data 0;address 0;#(2 * clk_cycle) rst_n 0;#(2 * clk_cycle) rst_n 1;#(100 * clk_cycle) $stop; endalways(posedge ack) begin// 接收到应答信号后给出下一个处理对象data data 1;address address 1; endwriting u_writing( .rst_n (rst_n ), .clk (clk ), .data (data ), .address (address ), .ack (ack ), .sda (sda ) );endmodule5波形输出

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/86445.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

响应式网站开发教程pdf最新新闻热点事件素材2022

BackPressure详细介绍 文章目录BackPressure详细介绍前言什么是反压?为什么需要关注反压?为什么不需要关注反压?如何发现和追踪反压的根源?反压的坏处经常碰到哪些问题会任务反压怎么处理反压?前言 Flink反压已经是老…

高端网站建设费用情况跑步机 东莞网站建设

目录 Date 对象 1. 获取当前时间 2. 获取特定日期时间 Date 对象的方法 1. 获取各种日期时间组件 2. 获取星期几 3. 获取时间戳 格式化日期时间 1. 使用 toLocaleString() 方法 2. 使用第三方库 UNIX 时间戳 内部表示 时区 Date 对象 JavaScript中内置的 Date 对象…

扬中网站建设流程网站文件夹目录

Android Termux 安装Kali Linux 或 kali Nethunter史诗级详细教程 一、Termux配置1、下载安装2、配置存储和换源3、基本工具安装 二、Kali Linux安装1、下载安装脚本2、更换apt源3、图形化安装 三、Kali Nethunter安装1、下载安装脚本2、更换apt源3、图形化连接 四、报错汇总1、…

本溪北京网站建设注销备案号 网站

什么时候会用到参数化 比如:一个模块要用多组不同数据进行测试 验证业务的正确性 Login模块:正确的用户名,密码 成功;错误的用户名,正确的密码 失败 postman实现参数化 在实际的接口测试中,部分参数…

免费注册网站专业app定制开发公司

原文转自 http://www.cnblogs.com/xilentz/archive/2010/05/06/1728945.html 收藏起来用的时候比较方便 TotoiseSVN的基本使用方法在 项目管理实践教程一、工欲善其事,必先利其器【Basic Tools】中,我已经讲解了怎样安装TortoiseSVN。在上面的讲解中已经…

自己做代练网站红色网站建设

目录 易混淆物理层数据链路层网络层nat如何实现私有ip通信IP数据报 格式解析tcp 连接tcp流量控制滑动窗口拥塞控制 报文捕获 wireshark路由模拟器 enspcdn代理服务器 VS cdn VS web cache 计算机有了物理地址,为什么还要有ip地址?单播 多播 广播 传输层会…

模板网站和插件灵动网站建设

我们都知道进程信息被放到了PCB(task_struct)中,可以理解为进程属性的集合。 PCB中包含了进程的ID,时间片,pc指针,所有的寄存器,进程状态、优先级、I/O状态信息等等...有兴趣的可以去看看源码&…

宁波市江北区建设局网站ppt电子商务网站建设

weapp-tailwindcss for uni-app 样式条件编译语法插件 版本需求 2.10.0 weapp-tailwindcss for uni-app 样式条件编译语法插件 这是什么玩意?如何使用 tailwind.config.js 注册postcss 插件注册 uni-app vite vue3uni-app vue2 配置完成 配置项 这是什么玩意? 在 uni-app …

网站建设app开发合同苏州沧浪区做网站的

文章目录 查看哪些端口被禁用TCP协议删除开机启动项方案1方案2 查看哪些端口被禁用TCP协议 netsh interface ipv4 show excludedportrange protocoltcp删除开机启动项 方案1 列出所有启动项 bcdedit /enum仔细看你要删除的是哪一项(看description)&a…

怎样开通网站网站有哪些备案

jExcelApi Java 操作 Excel 的类库Java Excel API(JXL)是一个成熟,开源的用来操作Excel电子表格的Java类库,支持读取,修改,写入等操作。这个项目基于GPL发布,而且对中文有很好的支持。● 支持字体、数字、日期操作● 能够修饰单元…

如何做某网站的移动客户端开发重庆做个网站多少钱

Kafka 集群中有一个 broker 会被选举为 Controller,负责管理集群 broker 的上下线,所有 topic 的分区副本分配和 leader 选举等工作。 Controller 的管理工作都是依赖于 Zookeeper 的。 以下为 partition 的 leader 选举过程: Leader选举流…

阜宁做网站网站建设哪家好建议兴田德润

MYSQL优化是一个非常大的课题,这篇文章主要介绍了跟MYSQL相关的4个方面,如果想深入研究可以查下相关资料。一、服务器级别优化二、操作系统级别优化三、MYSQL级别优化四、SQL级别优化一、服务器级别优化1.服务器选型SUN小型机、DELL730xd、HPDL380、IBM3…

优化网站关键词怎么做深圳建站公司网站

简洁清爽的代码风格应该是大多数工程师所期待的。在工作中笔者常常因为起名字而纠结,夸张点可以说是编程 5 分钟,命名两小时!究竟为什么命名成为了工作中的拦路虎。每个公司都有不同的标准,目的是为了保持统一,减少沟通…

自己做的网站能被百度收录吗自助众筹网站建设

本发明涉及播放实时视频,尤其涉及一种h5播放实时视频的方法与系统。背景技术:h5是指第5代html,也指用h5语言制作的一切数字产品。所谓html是“超文本标记语言”的英文缩写。“超文本”是指页面内可以包含图片、链接,甚至音乐、程序…

品牌科技公司排名石家庄seo代理商

【主题广范|见刊快】2024年新材料与应用化学国际学术会议(ICNMAC 2024) 2024 International Conference New Materials and Applied Chemistry(ICNMAC 2024) 一、【会议简介】 会议背景:随着科技的飞速发展,新材料与应用化学领域的研究成果日益丰富。为…

河南做酒店网络系统网站wordpress 大学主题

.net core 中的经典设计模式的应用Intro前段时间我们介绍了23种设计模式,今天来分享一下 .net core 源码中我觉得比较典型的设计模式的应用实例责任链模式asp.net core 中间件的设计就是责任链模式的应用和变形,每个中间件根据需要处理请求,并…

深圳网站优化最好的方法天津软件设计公司

3.1 开普勒轨道根数 轨道根数描述 轨道大小 半长轴a 常数 轨道形状 偏心率e 常数 轨道面方位 轨道倾角i和升交点赤经Ω 常数 轨道方位 近地点角距ω 常数 航天器在轨道中的位置 真近点角f 非均匀变化 平近点角M 均匀变化 纬度幅角ωf 非均匀变化 3.2 开普勒轨道根数与星下点轨迹…

佛山提供网站设计报价wordpress破解插件放心用吗

多线程入门 一、线程和进程 进程 进程:是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间和系统资源,一个应用程序可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位&#xff1…

网站建设市场调研美术生十大最烂专业

项目编号: S 054 ,文末获取源码。 \color{red}{项目编号:S054,文末获取源码。} 项目编号:S054,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 教师端2.2 学生端2.3 微信小程序端2…

宜昌网站建设开发费用怎样免费制作网页

在编程的世界中,流程控制是程序员运行的基础,流程控制决定了程序按照什么样的方式去执行,本节给大家介绍 Python 流程控制相关语法。 if 语句 if 语句表示如何发生什么样的条件,执行什么样的逻辑。 Python程序语言指定任何非0和…