<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Alchemist2002的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Alchemist2002</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Alchemist2002]]></copyright><item><title><![CDATA[【无标题】]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/133924675</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/133924675</guid><author>Alchemist2002</author><pubDate>Thu, 19 Oct 2023 14:58:05 +0800</pubDate><description><![CDATA[找不到工作开始拿自己垃圾uvm项目找验证。。。被问麻了。记录一下被问到然后六目或者八目相对 无语凝噎的验证问题。]]></description><category></category></item><item><title><![CDATA[ACE初探]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/127068749</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/127068749</guid><author>Alchemist2002</author><pubDate>Tue, 27 Sep 2022 16:56:55 +0800</pubDate><description><![CDATA[新通道：监听地址通道 snoop address channel；监听数据通道 snoop data channel；监听响应通道 snoop response channel；AC通道是对cache主设备的输入，该cache主设备为侦听事务提供地址和相关的控制信息。CR通道是cache 主设备的输出，其提供对侦听事务的响应。每个侦听事务都有与其相联系的单个响应。监听响应指示CD通道中相关联的数据传输是否是期望的。CD通道是可选择的输出通道，用于将监听数据从主机传输出去。]]></description><category></category></item><item><title><![CDATA[【cache prefetch】]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/124460034</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/124460034</guid><author>Alchemist2002</author><pubDate>Wed, 27 Apr 2022 22:51:18 +0800</pubDate><description><![CDATA[https://en.wikipedia.org/wiki/Cache_prefetching

文章目录1. Data vs. instruction cache prefetching2. Hardware vs. software cache prefetching3. Methods of hardware prefetching3.1 stream buffers3.2 stride prefetching3.3 Temporal prefetch3.4 Collaborative prefet.]]></description><category></category></item><item><title><![CDATA[【提交】commit]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/124390957</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/124390957</guid><author>Alchemist2002</author><pubDate>Wed, 27 Apr 2022 00:05:09 +0800</pubDate><description><![CDATA[重排序缓存
本质上是FIFO. 存储指令的类型，结果，目的寄存器和异常的类型。ROB容量决定了流水线中最多可以同时执行的指令个数。



]]></description><category></category></item><item><title><![CDATA[【CPU latency】]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/124292081</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/124292081</guid><author>Alchemist2002</author><pubDate>Wed, 20 Apr 2022 10:53:44 +0800</pubDate><description><![CDATA[Numbers Every Programmer Should Know By Year

Latency Numbers Every Programmer Should Know · GitHub

Latency numbers every programmer should know · GitHub




]]></description><category></category></item><item><title><![CDATA[【EDA工具】]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123995088</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123995088</guid><author>Alchemist2002</author><pubDate>Thu, 07 Apr 2022 11:36:22 +0800</pubDate><description><![CDATA[文章目录1. ESL2. 验证的分类及相关工具2.1 验证方法的分类2.2 动态验证及相关工具2.3 静态验证及相关工具3. 逻辑综合及综合工具4. 可测性设计与工具5. 布局布线工具6. 物理验证及参数提取与相关工具6.1 物理验证分类6.2 参数提取7. 著名EDA公司与工具介绍
因为转ic，对EDA工具不甚了解。阅读《SOC设计方法与实现》第三章SOC设计与EDA工具。
1. ESL
Electronic System Level：电子设计系统级

功能设计：功能模型，输入输出端口，通信，控制流
基于]]></description><category></category></item><item><title><![CDATA[【TAGE】分支预测]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123959091</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123959091</guid><author>Alchemist2002</author><pubDate>Mon, 04 Apr 2022 23:19:25 +0800</pubDate><description><![CDATA[文章目录1. GEometric history length prediction2. The TAGE predictor2.1 prediction computation2.2 updating the TAGE predictor2.2.1 更新 useful counter *u*2.2.2 正确预测的更新2.2.3 整体预测错误时2.3 更新策略的原理3. 代码
论文地址：TAGE
1. GEometric history length prediction
预测器有M个不同的预测表 TiT_]]></description><category></category></item><item><title><![CDATA[【发射】issue]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123796389</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123796389</guid><author>Alchemist2002</author><pubDate>Wed, 30 Mar 2022 22:50:01 +0800</pubDate><description><![CDATA[发射队列（IQ）也可以叫做保留站（Reservation Station, RS）。发射队列会按照一定规则，选择源操作数都已经准备好的指令，将其送到FU中执行，是处理器从顺序执行到乱序执行的分界线。
发射阶段的硬件复杂，时序处于处理器当中的关键路径上。
下图给出发射阶段的执行过程。

发射队列(( IssueQueue )，用来存储已经被寄存器重命名，但是没有被送到FU执行的指令，通常也被称为保留站(Reservation Station)
分配(Allocation )电路，用来从发射队列中找到空闲的空间]]></description><category></category></item><item><title><![CDATA[【WSL2】Synopsys EDA (VCS, Verdi, DC) 安装]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123755438</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123755438</guid><author>Alchemist2002</author><pubDate>Sat, 26 Mar 2022 16:44:20 +0800</pubDate><description><![CDATA[WSL备份与还原 | 小肥羊吃草不吃肉 (xfy-learning.com)

记一次在Windows下安装使用vscode并连接wsl的过程 - 知乎 (zhihu.com)


]]></description><category></category></item><item><title><![CDATA[No Such a file or dictectory]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123722447</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123722447</guid><author>Alchemist2002</author><pubDate>Thu, 24 Mar 2022 21:41:34 +0800</pubDate><description><![CDATA[跑脚本正确的路径找不到，原因是缺少“\”.
]]></description><category></category></item><item><title><![CDATA[【分支预测】（三）预测失败恢复]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123658877</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123658877</guid><author>Alchemist2002</author><pubDate>Tue, 22 Mar 2022 17:20:36 +0800</pubDate><description><![CDATA[解码阶段：可得直接跳转指令的目标地址和jal/jalr跳转方向。如果jalr预测错误，但还没读到寄存器内容，可以简单停止流水线。
在读取物理寄存器阶段：发现目标地址错误，需要对发射队列的指令选择性清除，错误路径上的指令清除。
执行阶段：重排序缓存ROB对分支预测失败的处理器状态恢复。


基于ROB的状态恢复：停掉fetch，使br成为ROB中oldest的指令。

基于checkpoint状态恢复：checkpoint是指发现分支指令，保存处理器状态，如寄存器重命名中使用的映射表mapping tab..]]></description><category></category></item><item><title><![CDATA[【分支预测】（二）目标地址预测]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123642177</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123642177</guid><author>Alchemist2002</author><pubDate>Mon, 21 Mar 2022 23:10:47 +0800</pubDate><description><![CDATA[Target address 分为两种：直接跳转 PC-relative和间接跳转absolute

直接跳转偏移值offset以立即数的形式固定在指令里
间接跳转目标来自通用寄存器，相比于其他间接跳转的分支指令，更推荐编译使用call/return


1. 直接跳转类型的分支预测
1.1 BTB

不跳转：PC+4（sizeof(fetch group)）
跳转：PC+sign_extend(offset)

多个PC共用一个空间存储目标地址。使用一个称为BTB（Branch Target Buffe.]]></description><category></category></item><item><title><![CDATA[【分支预测】(一)]]></title><link>https://blog.youkuaiyun.com/Alchemist2002/article/details/123638390</link><guid>https://blog.youkuaiyun.com/Alchemist2002/article/details/123638390</guid><author>Alchemist2002</author><pubDate>Mon, 21 Mar 2022 17:43:47 +0800</pubDate><description><![CDATA[1. Tournament Predictor

竞争的分支预测法
代码：https://github.com/larrtang/RISC-V-processor

根据不同的分支指令执行情况自动选择基于历史的分支预测法和基于全局的分支预测法。

2. 分支预测器更新

对于分支指令的方向预测，需要更新的内容包括：

历史寄存器 GHR/BHR
两位饱和计数器 PHT


2.1 更新GHR

取指阶段，根据预测结果更新GHR.
执行阶段，根据计算出的分支方向更新GHR.
提交阶段，retire时更新GHR]]></description><category></category></item></channel></rss>