硬件架构的艺术第一、二章亚稳态亚稳态的概念亚稳态窗口MTBF以下情况可能会发生亚稳态:减小亚稳态发生的概率的方法:亚稳态测试电路同步器的类型:模式A:模式B:综上:减小亚稳态发生概率时钟与复位同步设计避免使用行波计数器(即输出是下一级寄存器的时钟信号)门控时钟功耗组成不含锁存器的门控时钟电路基于锁存器的门控时钟电路门控信号双边沿或混合边沿时钟用触发器驱动另一个触发器的异步复位端推荐的设计技术避免
转载
2023-08-15 12:45:44
12阅读
硬件架构的艺术第三、四章处理多个时钟单时钟域多时钟域多时钟设计的处理技术时钟命名法分模块设计跨时钟域跨同步时钟域问题同频零相位差时钟同频恒定相位差时钟非同频、可变相位差时钟整数倍频率时钟非整数倍频率时钟握手信号方法使用同步FIFO使用异步FIFO时钟分频器偶数分频器奇数分频器分整数分频产生1.5倍的分频时钟产生4.5分频时钟 处理多个时钟单时钟域 易于实现,并且更少产生于亚稳态、建立与保持时间违
转载
2023-09-19 10:30:50
125阅读
第一章 亚稳态1.1 同步系统中,数据对于时钟来说有固定的传输关系,当这种关系满足器件的建立和保持时间要求时,输出会在特定的时间内输出一个有效状态但异步系统中,数据和时钟没有固定的关系,有时会出现违反建立和保持时间的现象,当此现象发生时,输出就会介于两个有效状态之间且无法确定保持时间,或者经过一定时间后才能恢复到有效状态。需要做的是如何量化亚稳态并且最大限度的减少其危害。触发器一般从亚稳态回复至稳
转载
2023-12-13 09:53:09
84阅读
时钟和复位2.1 同步设计2.1.1避免使用行波计数器 用触发器来驱动其他触发器的时钟输入端,一般会存在问题。由于第个触发器时钟到g的延而使第二个触发器的时钟输入产生偏,而且不能在每个时钟边沿都激活。用这种方式连接两个以上的触发器就会形成如图 2.1所示的行波计数器。注意,由于使用了更多的触发器,会使延迟
转载
2024-01-14 20:21:01
113阅读
计算机组成思维导图:1.为什么需要计算机对于现在的我们来说,每天要处理的信息量是巨大的,如果还是人工的来对这些数据进行处理,那么效率是很低的。计算机的出现可以帮助我们提高处理数据的速度。2.计算机的组成从大的系统分类上我们将计算机的组成分为:软件系统,硬件系统。硬件:硬件系统是指构成计算机的物理设备,即由机械、光、电、磁器件构成的具有计算、控制、存储、输入和输出功能的实体部件。如CPU、存储器、软
转载
2023-10-30 21:40:40
74阅读
5.6 在寄存器传输级降低功耗RTL完成时80%的功耗就已经确定,后端不能解决所有功耗问题。综合前RTL阶段就应讲与功耗有关的所有问题解决。5.6.1 状态机编码与解码格雷码在相邻状态转换时仅有一位发生变化,消耗能量更少。此外格雷码编码的状态机也消除了依赖于状态的组合等式中存在毛刺的风险。 若使用别的编码风格,仍可以通过让翻转频率最高的状态有最少的翻转位数,降低功耗。另一种方
转载
2023-10-04 19:54:31
159阅读
目录第五章:低功耗设计5.1功耗源5.3降低功耗的各设计层次5.4系统级低功耗技术5.4.1片上系统方法5.4.2软硬件功能划分5.4.3低功耗软件5.4.4处理器选择5.5体系结构级降低功耗技术5.5.1高级门控时钟5.5.2动态电压频率调节(DVFS)5.5.3 基于缓存的系统体系结构5.5.4对数FFT体系结构5.5.5异步设计5.5.6电源门控5.5.7多阈值电压5.5.8多电压
转载
2024-01-03 14:28:31
96阅读
听说这本书对数字IC设计中的常见问题讲的非常清楚易懂,看了目录感觉确实都是数字设计中一些关键问题,而且一共才217页,争取这个月看完吧。书的PDF资源:链接:https://pan.baidu.com/s/1b981albw_aZwLOhBvlHqpw 提取码:80zc1.1简介同步系统中如果数据和时钟满足建立保持时间的要求,不会发生亚稳态(meastable)。异步系统中数据和时钟关系不固定,可
转载
2023-09-18 10:07:39
105阅读
硬件是指组成电脑系统中看得见、摸得着的各种物理部件,主要包括CPU、主板、内存、硬盘、电源、显卡、声卡、网卡、光驱、机箱、键盘、鼠标等,本节主要介绍这些硬件的基本知识。1 CPUCPU也叫中央处理器,是一台电脑的运算核心和控制核心,作用和大脑相似,因为它负责处理、运算电脑内部的所有数据;而主板芯片组则更像是心脏,它控制着数据的交换。CPU的种类决定了所使用的操作系统和相应的软件,CPU的型号往往决
转载
2023-09-21 09:35:35
99阅读
FPGA最小系统说白了就是设计一个最小系统,其可以作为日后一系列产品的基础,一是可以加快开发流程,二是可以降低开发难度,本次选用的芯片是Xilinx(赛灵思)的7系列(ARTIX)的FPGA。FPGA的外设是可编程实现的,所以如串口、SPI、IIC等这些标准接口没有固定的外设接口,其完全可以在逻辑中编写,因此在本方案中不涉及,只是针对FPGA最小系统和常用的外设工作所必要的资源进行设计如电源、Fl
2.1 概述这章主要内容是ASIC设计时的一些建议,这些建议独立于EDA和工艺,主要针对模块设计和存储器接口。2.2 同步设计同步设计特点:单个主时钟和单个主置位/复位信号驱动设计中所有时序器件。同步设计:ASIC设计时域控制最安全的方法。2.2.1 避免使用使用行波计数器。行波计数器:将触发器输出作为其他触发器的时钟输入端,由于数据相对时钟会有延迟,所以不推荐这种使用方式。2.2.2 门控时钟门
转载
2023-12-19 13:57:40
69阅读
FPGA是一个很神奇的器件,工程师可以在上面做游戏或者说工程师每天都在上面做游戏,通过搭积木的方式,还能设计出精美绝伦,纷繁复杂,奇妙无比的电路,这使用器件搭建几乎是做不到的,因为太庞大!这种设计也只能在FPGA或者专用的IC中能够实现,IC只能定制,可是FPGA却可以反复使用,每一次都可以是不同的电路,因此,FPGA目前的应用十分广泛,在很多关键领域,也是香饽饽一样的存在。
原创
2021-08-20 14:22:27
1009阅读
FPGA是一个很神奇的器件,工程师可以在上面做游戏或者说工程师每天都在上面做游戏,通过搭积木的方式,还能设计出精美绝伦,纷繁复杂,奇妙无比的电路,这使用器件搭建几乎是做不到的,因为太庞大!
原创
2022-01-11 13:32:24
617阅读
目录写在前面4. 流水线的艺术4.1 介绍4.2 影响最大时钟频率的因素4.2.1 时钟偏移4.2.2 时钟抖动4.3 流水线读书笔记汇总 写在前面这个博客系列是对最近阅读的书籍《硬件架构的艺术》的部分内容的读书笔记,大部分的内容是摘抄书上的内容,小部分是自己的笔记,对书上部分知识点的理解以及拓展(红色标注)。4. 流水线的艺术4.1 介绍对高速 ASIC 日益增长的需求使得越来越需要增
转载
2024-01-26 06:26:24
124阅读
目录 写在前面2 同步和复位2.1 同步设计2.1.1 避免使用行波计数器2.1.2 门控时钟2.1.3 双边沿或混合边沿时钟2.1.4 用触发器驱动另一个触发器的异步复位端2.2 推荐的设计技术2.2.1 避免在设计中出现组合环路2.2.2 避免数字设计中的延迟链2.2.3 避免使用异步脉冲产生器2.2.4 避免使用锁存器2.2.5 避免使用双沿时钟2.3 时钟方案2.3.1 内部产生
转载
2023-12-16 18:26:10
73阅读
深度学习具有极高的计算需求, 要对深度学习应用进行开发并商业化,就需要找到合适的硬件配置。目前,在开发用于深度学习应用的高效硬件平台这一领域,竞争十分激烈。这里将介绍具体的硬件要求,并讨论未来对深度学习硬件的展望。深度学习在这十年,甚至是未来几十年内都有可能是最热门的话题。虽然深度学习已是广为人知了,但它并不仅仅包含数学、建模、学习和优化。算法必须在优化后的硬件上运行,因为学习成千上万的数据可能需
转载
2024-08-21 10:38:14
89阅读
1 简介USB电路,在我们的平时的应用十分的广泛,常见的鼠标,键盘、显示屏的触摸功能等,对外的接口均使用的是USB接口。USB接口主要可以划分为两种:USB 2.0、USB 3.0。从连接器上区分的依据是,内部颜色白色的为USB 2.0接口,内部颜色为蓝色的为USB 3.0接口(当然也不是绝对是这样的)。详情见图: 2 电路设计2.1 USB 2.0电路设计USB 2.0主要有4个
转载
2023-08-01 11:37:41
123阅读
Micro:bit做为当红的少儿编程工具,这两年在编程教育领域越来越火。今天就从硬件架构开始,分享Micro:bit的相关主题。Microbit 硬件设计是根据ARM mbed技术所开发的应用IC及相干周边功能所设计出来的!另外有一颗接口IC 用来处理USB 接口及拖拉式核心软件更新法.这接口IC 并未用来链接任何周边.两部分关键信息可以一窥Microbit
转载
2024-01-31 06:25:50
69阅读
基于OMAP1510双核架构的移动多媒体通信终端的设计与实现 [日期:2008-8-25]作者:梅晓兰 张连发 梅启斌[字体:大中小] 第三代(3G)无线通信技术将为蜂窝通信系统和个人通信系统提供真正意义上的宽带服务,服务商将提供更高水准的无线多媒体服务,包括数据、音频、视频和语音服务等。为了充分挖掘3G的多媒体通信潜力,系统开发者需要一种新型的软件和硬件技术。较目前而言,硬件平台必须具有高性能
转载
2023-12-28 10:46:28
44阅读
# 软件架构的艺术
软件架构是软件开发中的关键组成部分,决定了系统的功能、性能、可维护性和可扩展性。从宏观上讲,软件架构是将系统分解为可管理的部分,把复杂性转化为可操作性。本文将从软件架构的基础知识出发,通过代码示例、流程图和状态图等方式,帮助读者深入理解软件架构的重要性。
## 一、什么是软件架构?
软件架构是描述软件系统各部分及其相互关系的高层结构。它不仅包括系统中组件的组织和交互方式,