![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
芯片设计基础
狮子座硅农(Leo ICer)
努力成为卓越的芯片研发人员!
展开
-
linux下yum安装python
centos7上用yum安装python3。查询yum list python3。centos7安装python3。2021-12-22有意见发评论。yum安装python3。原创 2022-08-17 14:18:51 · 1385 阅读 · 0 评论 -
曼哈顿距离
出租车几何或曼哈顿距离(Manhattan Distance)是由十九世纪的赫尔曼·闵可夫斯基所创词汇 ,是种使用在几何度量空间的几何学用语,用以标明两个点在标准坐标系上的绝对轴距总和。两点在南北方向上的距离加上在东西方向上的距离d(i,j)=|X1-X2|+|Y1-Y2|条件:只能走直线“拐弯”只能是九十度满足以上两个条件中的最短距离假设两点坐标A(x1,y1),B(x2,y2),那么距离公式如下:如图,曼哈顿距离的路径不唯一。......原创 2022-08-16 21:25:06 · 1300 阅读 · 0 评论 -
时序收敛概念原理
时序收敛的目的是让FPGA design 按预设的逻辑正常的工作。为了使其正常工作,需要考虑至少三处:FPGA内部的寄存器-寄存器时序要求,FPGA输入数据的时序要求,FPGA输出信号的要求。2、3、4节的介绍目的在于简述可能遇到的不同情况,旨在说明约束实际上是告诉ISE套件通过设计本身的逻辑不能看出来的关系和要求。...原创 2022-08-15 21:10:47 · 358 阅读 · 0 评论 -
AXI协议介绍
AXI数据AMBA(The ARM Advanced Microcontroller Bus Architecture)家族中的一员,AXI协议在AMBA3.0版本中开始出现,并在后续的AMBA4.0、AMBA5.0中持续更新,对应AXI3、AXI4和AXI5。原创 2022-08-15 20:30:42 · 424 阅读 · 0 评论 -
“流片”一词来源
“流片”这个术语就是起源于磁带设备。磁带设备保存的是流式信息(即必须从前到后顺序式地访问,不能像磁盘一样任意访问所有位置),所以吧GDS2文件交给厂家的过程叫作tapeout,中文就翻译成“流片”...原创 2022-05-17 15:08:35 · 1664 阅读 · 0 评论 -
VScode只查找当前文件的内容
ctrl+f 搜索当前文件ctrl+shift+f 搜索工作区要是快捷键失灵,可能是大写锁定打开了原创 2022-03-23 08:50:59 · 1903 阅读 · 0 评论 -
不等于零分支bnez
test:lwu x31, 0x00(x13)bnez x31, test从x13寄存器load数据到x31寄存器,判断如果x31寄存器内容不为了,则重写执行从test:开始的指令原创 2022-03-22 15:04:43 · 2980 阅读 · 0 评论 -
误码仪的预加重
预加重是一种在发送端对输入信号高频分量进行补偿的信号处理方式。随着信号速率的增加,信号在传输过程中受损很大,为了在接收终端能得到比较好的信号波形,就需要对受损的信号进行补偿,预加重技术的思想就是在传输线的始端增强信号的高频成分,以补偿高频分量在传输过程中的过大衰减。而预加重对噪声并没有影响,因此有效地提高了输出信噪比。...原创 2022-03-22 09:12:10 · 428 阅读 · 0 评论 -
看门狗(WDT)
概念看门狗(WatchDog Timer,简称WDT)是MCU中常用的模块,俗称“看门狗”。其实看门狗不是什么特殊的外设,一般我们叫看门狗也叫做看门狗定时器,其实他就是一个计数器,在使用看门狗得时候给其一个值,然后计数器从0开始不断的累计(根据计数方向),在计数器到达预设值的值之前我们可以重置看门狗,简称喂狗。那么如果我们程序没有及时喂狗,当计数器到达预设值值时便会复位芯片。...原创 2022-03-21 20:37:16 · 10416 阅读 · 0 评论 -
什么是orcid?
ORCID是一个独特的标识符,会记录你所有的学术研究活动,包括你参与创作的出版物、数据集、与研究机构的隶属关系以及资金支持等等。算了,太文绉绉的语言咱也组织不来。说通俗点,ORCID就相当于是一个学术身份证。身份证大家都知道,一人一个,是你自己的独特凭证,身份证里面会镶嵌一个芯片,可以记录你所有的在案的活动,比如,你的乘车乘机信息、租住信息等等。可以有人跟你重名,但是身份信息没人会跟你重复,一人一证,这是最基本的。ORCID就等同于一个身份证,是一个可靠的学术凭证。ORCID绑定的是邮箱,一...原创 2022-03-20 10:59:57 · 8532 阅读 · 0 评论 -
risc-v 汇编同步(x.sync)
SET_XXX_REG(ADDR_XXX_RECFG,0x00) #trigger a ref configure x.syncli x13, CRU_BASElwu x31, 0x00(x13)s.syncli x13,XXXx.sync之前的寄存器配置完成,才会执行后面指令原创 2022-03-18 10:01:38 · 464 阅读 · 0 评论 -
risc-v li x1, CLK_BASE | ##ADDR##
在.h文件定义函数#define PLL_DIV(ADDR,VALUE_8_7,VALUE_7_0)\li x13, CRU_BASE | ## ADDR ##; \li x14, (## VALUE_8_7 ## << 7) | ## VALUE_7_0 ##;\sw x14, 0x00(x13);\li rd, immediatex[rd] = immediate将常量加载到 x[rd]中。sw rs2, of...原创 2022-03-18 09:27:54 · 313 阅读 · 0 评论 -
串联外设接口SPI
串联外设接口(serial peripheral interface,简称SPI),作为一个广泛使用的串行同步接口电路,以其结构简单、传输高效等优势,被应用于众多SoC芯片中,实现与其他外围设备的数据交换、信息传递。SPI主要有2种工作模式:主模式(Master)和从模式(Slave mode)。主模式设备控制数据传输过程,包括数据传输速率、发起、传输时钟产生等等。从模式设备被动收发数据,因此在主设备发起传输之前必须完成设置,且控制设置必须与主设备相匹配。...原创 2022-03-17 09:45:58 · 539 阅读 · 0 评论 -
UART基础知识
UART(UniversalAsynchronous Receiver/Transmitter,通用异步收发传输器)作为一种串行通信设备,实现设备之间的低速串行通信。UART可以实现数据的串-并转化,(1)在接收数据时对串行数据进行逐位接收并转化为并行数据存储在缓冲区中;(2)发送数据时将并行数据转化为串行数据并添加起始位、停止位等标志位进行逐位发送。UART 具有多种不同协议的物理接口,较为常见的是 RS-232、RS-485 等,其中 RS-232 是使用较为广泛的接口...原创 2022-03-16 16:21:31 · 6516 阅读 · 0 评论 -
数字IC,集成电路,芯片 IP和VIP区别
数字IC验证领域的IP指的是Intellectual Property(IP) core,VIP指的是verificationIntellectual Property(IP) core.原创 2022-03-08 15:10:18 · 2206 阅读 · 0 评论 -
TOPS/W什么意思
OPS是Tera Operations Per Second的缩写,1TOPS代表处理器每秒钟可进行一万亿次(10^12)操作。与此对应的还有GOPS(Giga Operations Per Second),MOPS(Million Operation Per Second)算力单位。1GOPS代表处理器每秒钟可进行十亿次(10^9)操作,1MOPS代表处理器每秒钟可进行一百万次(10^6)操作。TOPS同GOPS与MOPS可以换算,都代表每秒钟能处理的次数,单位不同而已。在某些情况下,还使用 TO原创 2022-02-28 23:01:34 · 3493 阅读 · 0 评论 -
PCIe的RC模式和EP模式有什么区别?
RC:Root Complex,RC设备用于连接CPU/内存子系统 和 I/O设备;RC模式下,PCIE配置头中的类型值为1;RC模式下,支持配置和I/O事务EP:EndPoint,EP设备通常表示一个串行或I/O设备;EP模式下,PCIE配置头中的类型值为0;EP模式下,PCIE控制器接收针对本地内存空间的读写操作...原创 2022-02-15 17:57:01 · 13837 阅读 · 1 评论 -
QSPI是什么?
QSPI是Queued SPI的简写,是Motorola公司推出的SPI接口的扩展,比SPI应用更加广泛。在SPI协议的基础上,Motorola公司对其功能进行了增强,增加了队列传输机制,推出了队列串行外围接口协议(即QSPI协议)。QSPI是一种专用的通信接口,连接单、双或四(条数据线)SPI Flash存储介质...原创 2022-02-09 11:40:10 · 1885 阅读 · 0 评论 -
带条件的分支预测(三)
带条件的分支预测,包括方向预测和地址预测,方向预测见《带条件的分支预测(一)和(二)》,预测地址如下:直接跳转/分支指令的分支目标地址:需要使用当前的PC值和取回的指令字中的立即数进行加法运算;间接跳转/分支指令的分支目标地址:对于间接跳转/分支指令,由于分支的目标地址需要使用寄存器索引的操作数(基地址寄存器)和指令字中的立即数进行加法运算,因此只能在流水线的执行阶段计算出分支的目标地址。在现代高速的处理器中,这些都是不可能在一个时钟周期内完成的。在高速的处理器中连续取下一条指.原创 2022-02-04 11:45:22 · 1488 阅读 · 0 评论 -
带条件的分支预测(二)
方向预测包括静态预测(见带条件的分支预测(一))和动态预测,下面将对动态预测进行进行介绍。动态预测是指依赖已经执行过的历史信息和分支指令本身的信息综合进行“方向”预测。最简单的分支方向动态预测器为一位饱和计数器(1-bit saturating counter),每次分支指令执行之后,便使用此计数器记录上次的方向。其预测机制是下一次分支指令永远采用上一次记录的“方向”作为本次预测的方向。一位饱和计数器的结构最简单,但是预测精度不如两位饱和计数器。两位饱和计数器是最常见的分支方向动态预测原创 2022-02-04 11:10:58 · 2215 阅读 · 0 评论 -
带条件的分支预测(一)
对于带条件跳转/分支指令,流水线在取指令阶段无法得知该指令的条件是否成立,因此无法决定是跳还是不跳,理论上指令只有在执行段完成后,才能解析出最终的跳转结果。假设处理器将取指暂停,一直等到执行段完成才继续取指,则会造成大量的流水线空泡周期,从而影响性能。为了提高性能,现代处理器的取指单元一般会采用分支预测技术。通俗来讲,分支预测需要解决两个方面的问题。(1)预测分支指令是否真的需要跳转?这简称为预测“方向”。(2)如果跳转,跳转的目标地址是什么?这简称为预测“地址”。取指时使用预测出的方.原创 2022-02-04 09:52:25 · 501 阅读 · 0 评论 -
risc架构处理器的分支指令类型?
1. 无条件跳转/分支(unconditional jump/branch)指令无条件跳转/分支指令是指(不需要判断条件)一定发生跳转的指令。按照跳转的目标地址计算方式,无条件跳转/分支分为以下两种。(1)无条件直接跳转/分支指令。此处的“直接”是指跳转的目标地址从指令编码中的立即数可以直接计算。risc-v架构中的jal(jump and link)指令便属于无条件直接跳转指令。例如:在“jal x5,offset”中,jal使用编码在指令字中的20位立即数(有符合数)作为偏移量。该偏移量乘以2原创 2022-02-03 22:44:36 · 3767 阅读 · 0 评论 -
如何处理地址不对齐指令?
连续不断是处理器取指的另一个目标。如果处理器在每一个时钟周期都能取一条指令,就可以源源不断的为处理器提供后续指令流,而不会出现空闲的时钟周期。地址不对齐导致问题:不管是从指令缓存,还是从ITCM中取指令,若处理器遇到了一条地址不对齐的指令,则会给连续不断取指造成困难,因为ITCM和指令缓存的存储单元往往使用SRAM,而SRAM的读端口往往具有固定宽度。以位宽为32位的SRAM为例,它在一个时钟周期只能读出一个(地址与32位对齐)32位的数据。假设一条32位长的指令处于地址不对齐的位置,则意味着需要原创 2022-02-03 22:10:34 · 1408 阅读 · 1 评论 -
risc-v指令错误处理
很多risc架构的处理器在运算指令产生错误(如上溢出(overflow)、下溢出(underflow)和除以零)时,都会产生软件异常。 risc-v架构的一个特殊之处是对任何的运算指令错误(包括整数和浮点指令)均不产生异常,而是产生某个特殊的默认值,同事设置某些状态寄存器的状态位。 risc-v架构推荐软件通过其他方法找到这些错误。...原创 2022-01-07 23:53:38 · 1269 阅读 · 0 评论 -
risc-v是模块化的指令集
RISC-V的指令集使用模块化的方式进行组织。 表 risc-v的基本指令集 基本指令集 指令数 描述 RV32I 47 支持32位地址空间与整数指令,支持32个通用整数寄存器 RV32E 47 RV32I的子集,仅支持16个通用整数寄存器 RV64I 59 支持64位地址空间与整数指令及一部分32位的整数指令 RV128I 71 支持128位地址空间与整数指令及一部分64位和32位的整数指令 表 RISC...原创 2022-01-07 23:23:35 · 386 阅读 · 0 评论 -
处理器核(core)、处理器(cpu)区别
处理器核(core):是指处理器内部最核心的部分,是真正的处理器内核;处理器(cpu):是一个完整的SoC,包含了处理器内核和其他的设备或存储器。原创 2022-01-07 18:28:10 · 9482 阅读 · 0 评论 -
乘法-乘一个常数
当一个乘数是常数时,乘法可以通过移位相加或移位相减实现。移位操作不需要使用逻辑门,只需要改变连线方式即可实现。乘数为2的整数次幂时:wire [7:0] a1;wire [12:0] b1;assign b1 = a1 << 1 = {4'b0000,a1[7:0],1'b0};assign b1 = a1 << 2 = {3'b000,a1[7:0],2'b0};assign b1 = a1 << 3 = {2'b00,a1[7:0],3'b0};原创 2022-01-06 00:07:03 · 609 阅读 · 0 评论 -
累加器,加法器的一种
累加器是一种特殊的加法器。与完整的加法器相比,累加器所需要的逻辑门数要小得多。b[3:0] =4'b0001;c_in[1]= c_out[0] =(a[0] &b[0])c_in[2]=c_out[1] =(a[1]&b[1])|((a[1]^b[1])&c_c_in[1])c_cin[3]=c_out[2] =(a[2]&b[2])|((a[2]^b[2])&c_in[2]...原创 2022-01-05 23:53:30 · 1725 阅读 · 0 评论 -
数字集成电路设计中------各种工程师职责
数字集成电路设计实现流程是个相当漫长的过程,拿手机基带芯片为例,对于3G, 4G, 5G, 工程师最初见到的是无数页的协议文档。架构师要根据协议来确定:协议的哪些部分可以用软件实现,哪些部分需要用硬件实现; 算法工程师要深入研读协议的每一部分,并选定实现所用算法; 芯片设计工程师,需要将算法工程师选定的算法,描述成RTL; 芯片验证工程师,需要根据算法工程师选定的算法设计测试向量,对RTL 做功能、效能验证; 数字实现工程师,需要根据算法工程师和设计工程师设定的目标PPA 将RT...原创 2021-12-13 00:23:20 · 1906 阅读 · 0 评论 -
芯片主要产品分类
原创 2021-12-13 00:14:57 · 1080 阅读 · 0 评论 -
glue logic-胶合逻辑
关于胶连逻辑(glue logic)的解释如下:gule logic的中文含意是“胶合逻辑”,它是连接复杂逻辑电路的简单逻辑电路的统称。例如,一个ASIC芯片可能包含许多诸如微处理器、存储器功能块或者通信功能块之类的功能单元,这些功能单元之间通过较少的粘合逻辑连接起来。在印制板(PCB)层,粘合逻辑可以使用具有较少逻辑门的“粘合芯片”实现,例如PAL、GAL、CPLD等。"Do not add glue-logic at the top level"的意思就是说在设计的顶层连接各个子模块的时候要原创 2021-12-02 16:01:24 · 2875 阅读 · 0 评论 -
芯片设计专业知识环
芯片设计专业知识环原创 2021-12-01 21:12:47 · 1396 阅读 · 0 评论