首页 > TAG信息列表 > RST

ADC081S101_dirver

      module ADC081S101_dirver ( input clk, //系统时钟 input rst_n, //系统复位,低有效 output reg adc_cs, //SPI总线CS output reg adc_clk, //SPI总线SCK input adc_dat, //SPI总线SDA output reg adc_done, //ADC采样完成标志 output reg [7:0] a

lil9481 的 setup文件

// USER DEFINED SETTINGS // Set driver type, fonts to be loaded, pins used and SPI control method etc // // See the User_Setup_Select.h file if you wish to be able to define multiple // setups and then easily select which

IC笔试题

单选题(每题2分 共20题) 1.状态机的编码风格包括一段式、两段式和三段式,下列描述正确的是( ) A一段式寄存器输出,易产生毛刺,不利于时序约束; B二段式组合逻辑输出,不产生毛刺,有利于时序约束; C三段式寄存器输出,不产生毛刺,有利于时序约束; D所有描述风格都是寄存器输出,易产生毛刺,有利于时序

常见手撕题

[数字IC手撕verilog]常见手撕题 序列检测 状态机 牛客VL25 输入序列连续的序列检测 // mealy method `timescale 1ns/1ns module sequence_detect( input clk, input rst_n, input a, output reg match ); parameter idle = 4'd0, s0 = 4'd1, s1 =4'd2, s2 =4'd3, s3 =4

[数字IC手撕verilog]脉冲同步、快到慢异步传输、开环闭环控制、握手反压

[数字IC手撕verilog]脉冲同步、快到慢异步传输、开环闭环控制、握手反压 具体理论就不阐述了,只放代码和示意图建议直接看sunburst的cdc文章,不会出错 http://www.sunburst-design.com/papers/CummingsSNUG2008Boston_CDC.pdf 脉冲同步(开环控制) // a is faster than b, and a pul

从计数器到可控线性序列机

设计定义      2. 设计输入 //亮0.25s,灭0.75s module counter_led_1( clk, rst, led ); input clk; input rst; output reg led; reg [25:0] cnt; parameter mcnt = 50_000_000; always@(posedge clk or neged

【FPGA学习笔记】VL40 占空比50%的奇数分频

设计一个同时输出7分频的时钟分频器,占空比要求为50% 注意rst为低电平复位       信号示意图:              clk_pos是周期为7且在clk_in上升沿翻转的信号, clk_neg是周期为7且在clk_in下降沿翻转的信号。   代码 复制代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

【FPGA学习笔记】VL32 非整数倍数据位宽转换24to128

描述 实现数据位宽转换电路,实现24bit数据输入转换为128bit数据输出。其中,先到的数据应置于输出的高bit位。 电路的接口如下图所示。valid_in用来指示数据输入data_in的有效性,valid_out用来指示数据输出data_out的有效性;clk是时钟信号;rst_n是异步复位信号。         输入描述

【FPGA学习笔记】VL26 含有无关项的序列检测

描述 请编写一个序列检测模块,检测输入信号a是否满足011XXX110序列(长度为9位数据,前三位是011,后三位是110,中间三位不做要求),当信号满足该序列,给出指示信号match。 程序的接口信号图如下:     程序的功能时序图如下: 请使用Verilog HDL实现以上功能,并编写testbench验证模块的功能。

九、RSTP快速生成树协议

1、RSTP概述 STP协议虽然能够解决环路问题,但是收敛速度慢,影响用户通信质量。所以IEEE于2001年发布802.1w标准定义了快速生成树协议RSTP,RSTP在STP基础上进行了改进,实现网络拓扑的快速收敛。 2、RSTP的端口角色 角色 描述 Backup Backup端口作为指定端口的备份,提供了另外一

RAM的交替读写

​ 一、认识RAM RAM的分类比较多,单口RAM,双口RAM等等,详细的不再介绍。这里使用的是simple dual port RAM。本次实验的内容是RAM的交替读写,RAM的读写位宽和深度都设置为256x8来完成这部分的内容。 二、 调用RAM ip并按照上述要求进行设置 设置过程如下几个图: 在summary界面中划

第十章练习题

1.题目:用状态机实现按循环码\(000 \rightarrow 001\rightarrow 011\rightarrow111\rightarrow101\rightarrow100\rightarrow000\)规律工作的六进制计数器 module cnt_6(clk,rst,cnt_out); input clk,rst;//时钟输入,复位信号输入 output [2:0]cnt_out;//计数输出 reg

日常记录(91)分频、序列检测、建立保持时间、DVE操作

三分频器 https://zhuanlan.zhihu.com/p/367798872 module taa (output clk_o, input clk_i, rst_n); reg [3:0] cnt; reg clk1, clk2; assign clk_o = clk1 ^ clk2; always @(posedge clk_i, negedge rst_n) begin if (!rst_n) begin cnt

遗传算法实现旅行商问题

同步:https://zhufn.fun/archives/yichuansuanfa/ 我们选择遗传算法的经典案例——旅行商问题来介绍遗传算法的具体实现。 旅行商问题 给定一系列城市和每对城市之间的距离,求解访问每一座城市一次并回到起始城市的最短回路。 我们将给每个城市设定一个坐标,以此来求得每对城市之间的

状态机练习-基于MCP33131-10 与 LCD12864 (SPI串口)的 ADC电压显示

LCD12864用 的是SPI串口形式,接口信号简单,好久之前用过LCD12864做过实验,“LCD12864 液晶显示-汉字及自定义显示(串口)”,但现在拿之前的代码下载进去,压根就不正常,现在看之前写的代码,真的是没法入眼,很不规范。 时序:    在时钟的低电平中间发送数据 sck的时钟需确认,看下表,SCLK的最小

【D触发器】— 时序图

一个非阻塞赋值可以综合成一个D触发器 module test_01 ( input clk, input rst_n, input in_01, output reg out_02 ); always@(posedge clk or negedge rst_n)begin if(rst_n == 1'b0) out_02 <= 1'b0; else out_02 <= in_01;// 综合成D触发器 end endmodule  测试文件

按键消抖实验

当按键被按下在到被释放,期间产生的输入信号会发生抖动,如果不进行消抖处理,直接使用可能就会误触发。 按键消抖实验设计思路,当按键被按下,隔20ms取数据,也就是说20ms的前后各取一次数据进行边沿检测: (1)、需要一个计数器cnt,因为按键随时都可能会被按下,所以计数器需一直启动在计数,需一直

【时钟分频】— 50MHz产生12.5MHz的4分频时钟

一、设计文件 module div_clk( input wire sclk, input wire rst_n, output wire po_div_clk ); parameter DIV_END = 8'd3; reg [7:0] div_cnt; reg div_clk_o; //div_cnt always @ (posedge sclk or nege

go推送钉钉机器人消息

前言 通过钉钉群机器人的webhook,实现消息推送。 本文代码仅示例markdown格式的消息。 示例代码 注意修改钉钉机器人的webhook package main import ( "bytes" "encoding/json" "fmt" "io/ioutil" "log" "net/http" "strings" ) type Md

【编程技巧】— 优秀的编程思路

1.计数器的优秀编程思路 always@(posedge clk or negedge rst_n)begin if(rst_n == 1'b0) cnt <= MAX; else(cnt == MAX && flage == 1'b1) cnt <= cnt + 1'b1; else cnt <= cnt; end 2.检测信号的下降沿 always@(posedge sclk)begin rx_r1

FPGA与MSP430G2553通信 UART串口操作

个人感觉,FPGA对数据的处理相对麻烦。在之前的等精度测频法中,明明是简简单单的一些除法,却需要引入IP核来进行一步一步的浮点数运算,当时为此死了很多脑细胞,比较详细的内容见我早一些时间的吐槽博客:Verilog设计练习 基于FPGA的等精度频率计_Krism0912的博客-CSDN博客_用verilog设计

计数器阶段9 - 练习一

题目:       把时序画的具体点:      设计关键点: (1)、需用到两个计数器,计数器cnt0 用于产生1M的soic时钟计数,系统100M,产生1M,需计数100次; 计数器cnt1用于对bit位数进行计数,需发送12bit。 (2)、增加flag_add,用于标出需要计数的阶段。 (3)、 soic 在cnt1=0和cnt1=11期间,需保持为高

基于FPGA的简易乘法器设计

  核心思想是进行因式分解,因式分解之后移位运算,最后再作加法运算,如下所示:           1 module cheng_fa( 2 input clk , 3 input rst_n , 4 5 input

基于MCP3313-10 ADC 的SPI接口驱动练习

先了解MCP3313-10的操作步骤:   看上图可以了解,上电之后先经过tACQ(输入采集,但这个时候并不能对数据进行采集)一段时间,设定为状态0;再进入tCNV(数据转换期间,不能采集数据),设定为状态1;最后在进入tACQ(可以进行数据采集),设定位状态2。状态1-2-1-2之间进行轮回。 然后查看具体时序:    

verilog-统计n位数据中1的个数

引言 最近在看数字IC面经,遇见一个很有趣的题目:输入一个32位的数据,判断数据中0/1的个数,如果1比0多则下一个时钟周期输出一个标志信号。 我一开始的思路是要在一个时钟周期内完成计算,应该是要用生成循环语句generate,但是平时的项目中几乎没用过这个语句,实在是不熟悉,并且如何用组合逻