- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 IIC协议详解
当检测到Start信号时,主机输出8bit的信号,其中前7bit表示从机的地址,为选中的从机信息,第8bit表示当前进行的读写操作,为’1’表示读操作,为’0’表示写操作,然后第9位为从机的应答ack信号,表示指定从机已接收到地址信号,以进行后续的传输;传输过程中的应答信号时序如下图所示,当检测到start信号后,在随后的8个时钟周期,SDA线进行一次8bit的数据传输,若接收到相应的8bit信号,则在第9个时钟周期拉低SDA信号,并视为一次ack应答信号。IIC为同步的半双工通信方式。
2022-09-22 20:02:23 1633
原创 SPI协议详解
时钟线在上升沿或者下降沿时,发送器向数据线上发送数据,在紧接着的下降沿或者上升沿时,接收器从数据线上读取数据,完成一位数据传输,8个时钟周期即可完成一个字节数据的传输。SPI至少需要4根线,分别是MISO(主设备输入从设备输出)、MOSI(主设备输出从设备输入)、SCLK(时钟)、CS(片选信号),SPI使用引脚较少且布线方便,所以芯片SOC中基本都需要SPI总线。当主设备要和某个从设备进行通信时,主设备需要先向对应从设备的片选线上发送使能信号(高电平或者低电平,根据从机而定)表示选中该从设备。
2022-09-22 20:02:00 3189 1
原创 AMBA发展历程
第一代总线是1997年发布的AMAB标准。主要包括两种总线协议,Advanced System Bus (ASB) 和 Advanced Peripheral Bus (APB). 此时的定位是ASB作为高性能总线,满足高性能处理器的需求,支持pipeline与多master操作。APB作为低速总线,属于二级总线满足外设与微处理器的通信需求。第二代总线是1999年发布的AMBA2标准。ARM增加了AMBA High-performance Bus (AHB)协议。AMBA2被广泛应用在ARM7,ARM9的
2022-07-14 18:11:45 1439
转载 AXI协议详解
AXI协议简介Advanced eXtensible Interface(AXI)是为了满足高性能系统设计而定义的一套独立通道协议,首次是在2003年发布的AMBA3标准中出现,经历AMBA4,目前已经到达AMBA5版本。AXI包括AXI与AXI-Lite两个版本。AXI满足如下的特性:– 适合于高带宽,低延迟的设计–关键特性如下:AXI结构AXI作为ARM标准的接口协议,主要应用在片内系统互联设计中。可实现不同IP之间通过标准的互联总线进行交互。片内各协议之间都可以实现方便的协议转换,完成系统内
2022-07-14 17:06:54 12552
转载 AHB协议详解
AHB总线AHB总线在AMBA2中就已经定义,AHB总线一开始主要是作为系统高速总线使用,适用于高性能,低功耗的系统设计。目前因为AXI总线作为高速总线的优势更加明显,AHB会用在相对低速的系统设计中。基本排序就是APB适用于低速设计,AXI适用于高速设计,AHB则介于两者之间。在AMBA协议中,AHB一开始主要面向系统级高带宽高性能的系统互联设计,支持多master,多slave的互联模式。但是随着系统的发展,AHB更多用于支持简单的数据传输,因此后来对AHB协议做了简化设计,定义了AHB-Lite协议
2022-07-14 16:42:24 9916 1
转载 APB协议详解
APB(Advanced Peripheral Bus) 作为高级外设总线是AMBA协议之一,也是最基本的总线协议。按照ARM官方定义,APB是一种低成本的接口协议,可以实现低功耗以及精简的接口设计,降低接口设计的复杂度。APB协议不支持流水线设计,它主要应用在低带宽设计需求的接口中,高性能带宽需求可以使用AXI总线。APB协议的实现与时钟沿对齐,以简化外设接口的设计。每次传输至少需要消耗两个时钟周期。在SOC设计中,AHB一般作为IP的配置接口,包括低速IP如I2C,UART,I2S等,也包括DDR,
2022-07-14 15:18:53 13876
原创 历经沧桑的人生才是真人生
人生就是这样,成败与得失无常,凡是路过的,都算风景;能占据记忆的,皆是幸福。等走远了再回首,我们才发现,挫败让人坚强,别离令人珍惜,伤痛使人清醒。你只有从过去中转身,幸福才会在明天迎接你。我们的软肋,是看不透、舍不得、输不起、放不下。看不透人际中得纠结、争斗后得隐伤,看不透喧嚣中得平淡、繁华后的宁静;舍不得曾经的精彩、不逮的岁月,舍不得居高时的虚荣,得意处的掌声;输不起一段情感之失,输不起一截人生。“来世不可待,往事不可追”。我们能把握的只有现在,只有当下。不必为逝去的青春感概,不必为凋零的鲜花惋惜,.
2022-05-12 13:38:25 365 1
转载 UVM 入门实验5
1. 寄存器模型的完善和嵌入定义uvm_reg和uvm_reg_block的以及mcdf_rgm寄存器模块。 // Dedicated register description [write-read reg] with uvm_reg type class ctrl_reg extends uvm_reg; `uvm_object_utils(ctrl_reg) uvm_reg_field reserved; rand uvm_reg_field pkt_len;
2022-05-11 13:40:45 543
转载 UVM 入门实验 4
在UVM入门实验3中,实现了monitor、reference model与checker之间的通信时通过TLM端口或者TLM FIFO来完成,相较于之前的mainbox句柄连接,更加容易定制,也使得组件的独立性提高。本次实验需要实现:将产生transaction并且发送至driver的generator组件,拆分为sequence与sequencer。在拆分的基础上,实现底层的squence。完成sequencer与driver的连接和通信工作。构建顶层的virtual sequencer。
2022-05-10 14:50:01 543
转载 UVM 入门实验3
1.TLM单向通信和多向通信在之前的monitor到checker的通信,以及checker与reference model之间的通信,都是通过mailbox以及在上层进行句柄传递实现的。这次实验则使用TLM端口进行通信,做逐步的通信元素和方法的替换。TLM通信结构框图将monitor中用来与checker中的mailbox通信的mon_mb句柄替换为对应的uvm_blocking_put_port类型。uvm_blocking_put_port #(mon_data_t) mon_bp_port
2022-05-09 11:10:11 1457
转载 UVM入门 实验2
1.验证组件和层次构建首先将各个package中SV组件替换为UVM组件实现组件对应原则:SV的transaction类对应为uvm_sequence_itemSV的driver类对应为uvm_driverSV的generator类对应为uvm_sequence+uvm_sequencerSV的monitor类对应为uvm_monitorSV的agent类对应为uvm_agentrSV的checker类对应为uvm_scoreboardSV的reference_
2022-05-08 14:17:00 591
原创 信号频率、采样频率、采样点数
f-信号频率fs-采样频率N-采样点数信号频率(f):信号频率就是信号的频率,其倒数是信号一个周期的时间T。采样点数(N):采样点数一次向PC端发送的数据量包含的点数,采样点数决定了每次传到PC内的数据量,实际就是每一个信号周期内采了几个点。dt=1/fs:采样频率一个周期的时间间隔---->> N=T/dt:每个信号周期内包含多少个采样周期,即每个信号周期内的采样点数N。FFT、IFFT的采样带你输必须是2的指数,在频域一个频点对应时域的一次采样,所以FFT的点数自然就是204.
2022-05-07 20:55:18 32163
原创 UVM入门实验1
1. 工厂得注册、创建和覆盖机制UVM中只有两种用例注册得宏`uvm_component_utils(T)`uvm_object_utils(T)编译仿真factory_mechanism.sv文件object_create类 class object_create extends top; trans t1, t2, t3, t4; `uvm_component_utils(object_create) function new(string name = "obj
2022-05-07 10:51:37 1831 1
原创 波特率-符号速率-传码率-数据速率-比特率-吞吐率-带宽区别
计算机界原文信号在信道上传输的基本形式如下图如上图所示,传输bit0~bit7,但由于通信机制的限制,我们必须在bit0之前加上start bit或者起始帧,在bit7之后加上stop bit或者结束帧,以及其他冗余部分。以上图做参考,看看概念如何让定义。波特率(Baud or Baud rate),单位bps或者Baud本身就是单位,即1Baud=1bps,波特率就是图中国的t1,表示一秒钟传输多少符号(码元)。Symbol rate(符号速率,或者传码率,或者码元传输速率),单位sps
2022-05-06 20:32:48 11422 2
原创 UVM 入门和进阶实验 0
UVM 入门和进阶实验 0本实验主要完成UVM的基本概念和仿真操作:懂得如何编译UVM代码理解SV和UVM之间的关系了解UVM验证顶层盒子与SV验证顶层盒子之间的联系掌握启动UVM验证的必要步骤编译编译文件uvm_compile.sv,待正常编译正常结束。在work库中仿真模块uvm_compile,在命令窗口敲入“run -all”,可以观察到仿真输出语句:在验证顶层都将需要这两句话: import uvm_pkg::*; `include "uvm_macros.svh"
2022-05-02 14:51:19 699
原创 四级工程师多选错误(1)
3.24当一个进程装入一个页面时,则该页面对应的页表表项中内存块号、驻留位以及访问位将被修改I/O设备数据传送控制方式中,实现程序直接控制方式需要设备状态寄存器、地址总线和数据总线、设备控制寄存器、设备数据缓冲区和地址译码器OSI参考模型应用层 表示层 会话-----应用层传输层 ------>传输层网络层数据链路层物理层共享介质以太网最早使用的传输介质是同轴电缆IP...
2019-03-25 16:27:27 285
原创 四级网络工程师多选错误(2)
进程控制块结构包括进程标识符进程当前状态进程相应的程序和数据地址进程优先级CPU现场保护区进程同步与通信机制进程所在队列PCB的链接字代码段指针抢占式调度系统中,进程从运行状态转换为就绪状态的可能原因进程创建完成时间片用完被调度程序抢占处理机文件控制块文件名文件号用户名文件地址文件长度文件类型文件属性共享计数文件建立日期提高文件系统块告诉缓存磁盘驱...
2019-03-25 16:27:17 301
原创 四级网络工程师多选错误锦集(3)
分布式操作系统的特点分布式操作系统是一个统一的操作系统实现资源的深度共享透明性:用户无需了解系统内本地主机或异地主机的差异自治性:各个主机关系都处于平等的地位,没有主从关系分布式操作系统的另一个优势是具有较高的可靠性进程控制块PCB的组织方式线性表方式索引表方式链接表方式交互式操作系统中,可以采用的进程调度算法FCFS(先来先服务),最短作业优先,最短剩余时间优先,时间片轮转...
2019-03-25 16:27:05 306
智能电脑散热系统
2018-11-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人