10 2023 档案

摘要:SRAMC主要是对SRAM进行控制 对于SRAM的逻辑,根据地址将数据存储到SRAM中,然后根据地址将SRAM中的数据读取出来 如何测试Memory,生产工艺原因造成的问题,采用DFT或者Bist测试方法 DFT - 在代码中加入测试逻辑,之后通过这部分逻辑对芯片进行测试 What is manuf 阅读全文
posted @ 2023-10-29 14:44 Icer_Newer 阅读(134) 评论(0) 推荐(0) 编辑
摘要:SRAMC SRAM CORE 8块memory进行广播信号,例化8片memory 阅读全文
posted @ 2023-10-28 11:16 Icer_Newer 阅读(34) 评论(0) 推荐(0) 编辑
摘要:APB Slave Design module apb_slave #( REG1_ADDR = 8'h00, REG2_ADDR = 8'h04, REG3_ADDR = 8'h08 ) ( // input signals input pclk, input presetn, input pse 阅读全文
posted @ 2023-10-23 22:05 Icer_Newer 阅读(37) 评论(0) 推荐(0) 编辑
摘要:AMBA总线概述 系统总线简介 AMBA 2.0 AHB - 高性能Bus APB - 外设Bus AHB ASB APB AHB 组成部分 APB组成部分 AMBA协议其他有关问题 DMA DMA - 既是Master又是Slave AHB Arbiter仲裁之后,Master1,Master2, 阅读全文
posted @ 2023-10-22 16:31 Icer_Newer 阅读(32) 评论(0) 推荐(0) 编辑
摘要:芯片设计规格书 架构师设计的文档 芯片有一个目标的面积值,先计算固核或者硬核的总面积,计算完成之后得到所占的面积比率,剩下的面积就是RTL代码所能使用的面积,然后使用Nand2x1或者Nand2x2进行估算RTL代码所能使用的门数 在RTL进行综合之后会得到门数,进行比较 在进行PR的时候首先界定芯 阅读全文
posted @ 2023-10-22 13:11 Icer_Newer 阅读(62) 评论(0) 推荐(0) 编辑
摘要:目录 简介 数字芯片会用到两种工艺,一种是Flash process工艺,芯片内部可以跑程序,没有程序,芯片就是一个砖头,程序存储与芯片内部的Flash中;另外一种就是Logic Process,逻辑工艺,不带Flash存储体,将程序放在NorFlash或者NandFlash中,总之是放在芯片外部的 阅读全文
posted @ 2023-10-22 09:45 Icer_Newer 阅读(45) 评论(0) 推荐(0) 编辑
摘要:Linux基本操作及Gvim基本操作 通常使用Linux系统进行设计 # 创建文件夹 mkdir myproj mkdir design_labs cp -rf 文件路径 复制到的路径 chmod 777 文件 芯片产品流程 综述 代码设计 - 迭代过程 综合之后会进行formal check,形式 阅读全文
posted @ 2023-10-21 18:24 Icer_Newer 阅读(37) 评论(0) 推荐(0) 编辑
摘要:1.异步FIFO的应用 跨时钟域 批量数据 传输效率高 2.异步FIFO结构 FIFO深度 - 双端口RAM设计 3.异步FIFO深度计算 4.异步FIFO读写地址的编码 5.异步FIFO读写时钟域的信号同步 6.异步FIFO空满信号的产生 阅读全文
posted @ 2023-10-15 18:27 Icer_Newer 阅读(12) 评论(0) 推荐(0) 编辑
摘要:1.握手原理 2.握手电路 阅读全文
posted @ 2023-10-15 17:03 Icer_Newer 阅读(15) 评论(0) 推荐(0) 编辑
摘要:1.两级触发器的问题 2.多比特跨时钟域的处理方法 FIFO是处理跨时钟问题的最常用问题 3.格雷码编码处理跨时钟域 4.异步FIFO 5.多比特跨时钟域的握手处理 阅读全文
posted @ 2023-10-15 16:58 Icer_Newer 阅读(136) 评论(0) 推荐(0) 编辑
摘要:1.慢时钟域信号同步到快时钟域的处理方法 快时钟信号采用慢时钟域信号 -- 两级触发器同步器 慢时钟域信号电平比较长,快时钟域的多个周期内都可以采样到慢时钟域信号 -- 只对信号的上升沿/下降沿/双沿检测 握手处理 -- Bus传输中使用,单bit信号使用较少 2.信号上升沿检测 -- 边沿检测同步 阅读全文
posted @ 2023-10-15 16:30 Icer_Newer 阅读(108) 评论(0) 推荐(0) 编辑
摘要:1.什么是亚稳态? 数据在时钟沿处变化,会导致出现亚稳态 2.如何处理亚稳态? 在实际设置时,多采用引入同步机制防止亚稳态传播 3. 二级寄存器(同步器) 4.MTBF(平均故障间隔时间) 时钟频率比较低(480M)的时候,可以使用二级触发器,降低亚稳态发生概率 时钟频率比较高(1.5G)的时候,可 阅读全文
posted @ 2023-10-15 15:32 Icer_Newer 阅读(36) 评论(0) 推荐(0) 编辑
摘要:建立时间和保留时间 首先,我们必须有一个观点,就是对任何一种触发器在时钟触发沿儿前后的一个小的时间窗口内,输入的信号必须稳定。这样的作用,也就是说我们时钟沿而来的时候,我们捕获的数据也是稳定的值,也就是确定的值。那如果不稳定呢,如果数据变化在这个时钟沿,那请问你这个时钟捕获的数据到底是什么样的值呢? 阅读全文
posted @ 2023-10-15 15:22 Icer_Newer 阅读(30) 评论(0) 推荐(0) 编辑
摘要:什么是跨时钟域的概念呢? 在一个电路中launch的时钟和capture时钟,如果不是同一个时钟呢?就是跨时钟域的电路 若两个时钟是同步时钟呢,那这个就叫同步时钟域 若两个时钟是异步呢时钟呢,那就是异步时钟域,也就是异步跨时钟域电路。 看这张图。这是clock a的domain,这是clock b的 阅读全文
posted @ 2023-10-15 15:08 Icer_Newer 阅读(108) 评论(0) 推荐(0) 编辑
摘要:1.介绍 Shell 支持数组(Array),数组是若干数据的集合,其中的每一份数据都称为数组的元素。 注意Bash Shell 只支持一维数组,不支持多维数组。 2.数组的定义 2.1 语法 在 Shell 中,用括号( )来表示数组,数组元素之间用空格来分隔. 语法为: array_name=( 阅读全文
posted @ 2023-10-12 23:58 Icer_Newer 阅读(103) 评论(0) 推荐(0) 编辑
摘要:1. 字符串变量的三种方式 字符串(String)就是一系列字符的组合。字符串是 Shell 编程中最常用的数据类型之一(除了数字和字符串,也没有其他类型了) 单引号方式 双引号方式, 推荐 不用引号方式 var = 'abc' var2 = "abc" var3 = abc 1.1 三种格式的区别 阅读全文
posted @ 2023-10-10 23:18 Icer_Newer 阅读(45) 评论(0) 推荐(0) 编辑
摘要:1. 自定义系统环境变量 1.1 全局配置文件/etc/profile应用场景 当前用户进入Shell环境初始化的时候会加载全局配置文件/etc/profile里面的环境变量, 供给所有Shell程序使用 以后只要是所有Shell程序或命令使用的变量, 就可以定义在这个文件中 1.2 案例 /etc 阅读全文
posted @ 2023-10-10 21:27 Icer_Newer 阅读(160) 评论(0) 推荐(0) 编辑
摘要:1.Shell变量 1.1 Shell变量的介绍 变量用于存储管理临时的数据, 这些数据都是在运行内存中的. 1.2 变量类型 系统环境变量 自定义变量 特殊符号变量 2.系统环境变量 2.1 介绍 系统环境变量是系统提供的共享变量. 系统环境变量是linux系统加载Shell的配置文件中定义的变量 阅读全文
posted @ 2023-10-06 21:59 Icer_Newer 阅读(26) 评论(0) 推荐(0) 编辑
摘要:1.Shell介绍 1.1 疑问 linux系统是如何操作计算机硬件CPU,内存,磁盘,显示器等? 答: 使用linux的内核操作计算机的硬件 1.2 Shell介绍 通过编写Shell命令发送给linux内核去执行, 操作的就是计算机硬件. 所以Shell命令是用户操作计算机硬件的桥梁 Shell 阅读全文
posted @ 2023-10-06 20:24 Icer_Newer 阅读(38) 评论(0) 推荐(0) 编辑