![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数字前端秋招准备
文章平均质量分 65
王_嘻嘻
这个作者很懒,什么都没留下…
展开
-
数字IC秋招手撕代码(十)计算最小公倍数与最大公约数
数字IC校招手撕代码,硬件利用辗转相除法计算最大公约数与最小公倍数原创 2022-10-21 11:01:53 · 925 阅读 · 0 评论 -
数字IC秋招手撕代码(九)可参数化的多端口寄存器堆设计
用verilog设计一个可参数化的寄存器堆,同一时刻输入的写地址互不相同,但读地址可以相同,所有端口都能连续响应读写请求。原创 2022-09-22 22:07:42 · 879 阅读 · 1 评论 -
数字IC秋招手撕代码(八)找序列中的第一个1—升级篇
用verilog实现,不断寻找序列中的第一个1,并输出其index,当寻找完毕后输出介绍信号。(LSB为例)原创 2022-09-21 14:32:21 · 2683 阅读 · 2 评论 -
数字IC秋招手撕代码(七)找序列中的第一个1
阿里面试原题:用verilog实现找到序列中的第一个1,并输出其index。(MSB为例)原创 2021-08-15 19:48:13 · 6596 阅读 · 2 评论 -
数字IC秋招手撕代码(六)异步FIFO详解
数字IC秋招手撕代码(六)异步FIFO常用情况FIFO的空满标志FIFO指针格雷码格雷码下的空满信号重点最小深度FIFO的计算代码最近两天晚上在看异步FIFO,之前也使用过异步FIFO,但是一直没有仔细搞懂原理。这次准备写篇博客记录一下。常用情况以下两种情况,经常会使用到异步FIFO1.跨时钟域问题2.位宽不一致(例如 输入8bit 输出16bit)这时候fifo中的内存结构应该和常见的不同,具体还不清楚FIFO的空满标志一个深度为(2^n)的FIFO,其地址位宽需要n+1位MSB原创 2021-08-14 22:23:44 · 529 阅读 · 0 评论 -
数字IC秋招手撕代码(六)异步FIFO
异步FIFO常用情况FIFO的空满标志FIFO指针格雷码格雷码下的空满信号重点最小深度FIFO的计算代码最近两天晚上在看异步FIFO,之前也使用过异步FIFO,但是一直没有仔细搞懂原理。这次准备写篇博客记录一下。常用情况以下两种情况,经常会使用到异步FIFO1.跨时钟域问题2.位宽不一致时(例如 输入8bit 输出16bit)FIFO的空满标志一个深度为(2^n)的FIFO,其地址位宽需要n+1位MSB作为指针折回标志,当指针完成一轮读或写,MSB就翻转一次。所以当wptr和rptr原创 2020-08-04 21:25:06 · 1223 阅读 · 0 评论 -
数字IC秋招面试专题(五)逻辑式如何转换为晶体管电路
在面试中经常会要求画出某一个逻辑表达式的管级电路,本文将详细分析逻辑表达式到管级电路的推导过程原创 2021-07-06 10:43:26 · 1355 阅读 · 5 评论 -
数字IC秋招面试专题(四)低功耗设计方法及HVT、UPF介绍
随着芯片工艺越来越先进,功耗也被越来越关注,低功耗设计转变为芯片设计的常态。本文简单介绍一下主流的低功耗设计方法,博主也只是简单了解,并不深入。原创 2021-07-03 12:39:37 · 6529 阅读 · 4 评论 -
数字IC秋招面试专题(三)异步复位和同步复位
异步复位和同步复位前言一、同步复位二、异步复位三、同步复位和异步复位的区别四、 异步复位同步释放前言本章解释一下同步复位和异步复位的区别,以及异步复位同步释放究竟好在哪里,需要怎么做一、同步复位同步复位就是只有在时钟上升沿时,复位信号才有效代码如下:module sync_rst( input clk, input rstn, input din, output reg dout);always @(posedge clk)begin原创 2020-09-23 20:58:48 · 1113 阅读 · 0 评论 -
数字IC秋招面试专题(二)verilog的signed和unsigned
verilog的signed和unsigned前言一、右值按signed还是unsigned二、signed的自动扩位三、系统函数$signed 和 $unsigned前言如果用verilog做一些数据处理的话,一定会经常用到signed和unsigned,而其中有一些知识点很多人都不太关注,故在此总结一下一、右值按signed还是unsigned1、一条运算究竟是按unsigned还是signed运算,取决于其右值的操作数是否含有unsigned变量,只要右值存在unsigned变量,整原创 2020-09-24 15:33:14 · 12137 阅读 · 6 评论 -
数字IC秋招面试专题(一)setup time 和 hold time
数字IC秋招面试专题(一)setup time推导hold time推导想必在数字IC笔试和面试中总是会考到setup time和hold time的知识,博主之前理解的不是很深刻,虽然回答的上,但是老是会忘,希望通过这次总结,彻底理解。先字面理解一下setup time和hold timesetup time:建立时间hold time: 保持时间在DFF中,数据需要保证在建立时间前到达,在保持时间后才能更新,否则DFF会发生亚稳态(这里证明亚稳态并非只在异步电路中出现)先看一下基本分.原创 2021-06-30 17:27:42 · 2062 阅读 · 1 评论 -
数字IC秋招手撕代码(五)脉冲检测
用Verilog实现快时钟域到慢时钟域的脉冲检测电路原创 2021-03-01 15:24:23 · 1646 阅读 · 2 评论 -
数字IC秋招手撕代码(四)同步FIFO实现
数字IC秋招备战(四)同步FIFO实现题目分析代码题目用verilog实现一个同步FIFO,深度16,数据位宽8bit分析由于同步FIFO的读写两端时钟是同步的,所以不需要异步考虑。同步FIFO中需要设计的部分是读指针,写指针,空满状态,读数据和写数据和ram的数据流通。代码modual Syn_fifo#( parameter DATA_WIDTH = 8, parameter ADDR_WIDTH = 4, parameter RAM_DEPTH = (原创 2021-02-23 16:43:19 · 796 阅读 · 2 评论 -
数字IC秋招手撕代码(三)无毛刺时钟切换
数字IC前端笔试(三)无毛刺时钟切换题目分析代码题目用verilog实现无毛刺时钟切换电路。输入sel,clka,clkb,sel为1时输出clka,sel为0时输出clkb分析如果单纯地在sel高是选择clka输出,sel为低时选择clkb输出,那么很有可能在时钟切换的时刻出现毛刺,这甚至会导致电路故障。所以要进行专门的时钟切换电路的设计,保证电路切换中不会有毛刺的出现,这一根本原理在时钟切换过程中,要在原时钟和待切换时钟的低电平进行切换。这里分为两种情况:时钟源为倍数关系时钟源是异步时钟原创 2021-02-22 21:09:55 · 1295 阅读 · 0 评论 -
数字IC秋招手撕代码(二)50%占空比的三分频
数字IC前端笔试(二)50%占空比的三倍频题目设计思路代码题目用verilog实现三分频电路,要求输出50%占空比设计思路如果不限制占空比50%的话,那么用counter做3进制计数,每次counter=1拉高,counter=2拉低即可,但是这样的占空比是1/3。如果要做50占空比的三倍频,则需要一个上升沿的六倍频和一个下降沿的六倍频异或得到。类似的奇分频都可以这样实现。代码module Dive_three( input clk, input rstn, output div原创 2021-02-21 15:14:18 · 4354 阅读 · 2 评论 -
数字IC秋招手撕代码(一)异步双端口ram
数字IC前端笔试(一)异步双端口ram题目设计思路代码题目用verilog实现一个异步双端口ram,深度16,位宽8bit。A口读出,B口写入。支持片选,读写请求,要求代码可综合设计思路因为要设计双端ram,所以是读写分离,时钟分离,控制信号分离。先确定端口:端口名备注rstn低电平复位cs片选clkaA端时钟addraA端地址doutram输出rd_en读端使能clkbB端时钟addrbB端地址dinram写原创 2021-02-21 12:09:10 · 1420 阅读 · 0 评论