<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[bdfpxsfh的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/bdfpxsfh</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; bdfpxsfh]]></copyright><item><title><![CDATA[AI技术知识100问]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/132635150</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/132635150</guid><author>bdfpxsfh</author><pubDate>Sat, 02 Sep 2023 11:42:42 +0800</pubDate><description><![CDATA[总的来说,Transformer使用attention机制建模序列之间的全局依赖关系,取代了RNN和CNN中的局部建模,使其对长程依赖更为敏感,能够有效学习语义信息。这些技术使得LLM无需大量标注新样本就可以快速适配到新任务上,减少训练成本和人力标注量,是LLM强大推理和迁移能力的关键。MAC需要读取x,w,y这3个操作数,而FMAC只需要读取x,y,z这3个操作数。综上,FMAC在计算性能、效率、准确性和并行性上都优于MAC,是评价GPU算力更合适的指标。MAC:需要暂存x*w的中间结果,存在精度损失。]]></description><category></category></item><item><title><![CDATA[AI与数字芯片验证]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/128999782</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/128999782</guid><author>bdfpxsfh</author><pubDate>Sat, 15 Jul 2023 16:29:22 +0800</pubDate><description><![CDATA[第2节介绍了拟议工作中遵循的方法，显示了收集、组织和综合文献中现有知识的方法。在第 3 节中，介绍了不同的 ML 模型以及它们旨在解决的问题的描述。第 4 节演示了将 ML 纳入验证过程的早期工作，重点介绍了使用的关键模型。Mentor Graphics Questa Verification IP：一种验证 IP（即可复用的验证组件），可以帮助芯片设计人员快速验证数字芯片的性能。Synopsys IC Compiler：一种用于高效数字芯片设计的自动化工具，可以在设计过程中实现自动验证。]]></description><category></category></item><item><title><![CDATA[uvm sequence是怎么跑起来的？]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/130508787</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/130508787</guid><author>bdfpxsfh</author><pubDate>Fri, 05 May 2023 17:29:52 +0800</pubDate><description><![CDATA[所谓的sequence启动，就是将sequence中的sequencer句柄执行sequencer对象，将sequencer中的sequence句柄指向sequence对象。注意，Vsqr中的sqrA和agtA中的sqrA要指向同一个实体，否则就乱套了，因此要在connect_phase中（也就是上图中的第0步），做以下连接。完成连接后，sequencer就可以调用sequence中的方法，sequence就可以调用sequencer中的方法，从此双方就可以相互通信。（手动启动，或者自动启动时）]]></description><category></category></item><item><title><![CDATA[手画1-bit cpu架构]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/130507268</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/130507268</guid><author>bdfpxsfh</author><pubDate>Fri, 05 May 2023 15:37:06 +0800</pubDate><description><![CDATA[【代码】手画1-bit cpu架构。]]></description><category></category></item><item><title><![CDATA[systemVerilog与多态]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/130503156</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/130503156</guid><author>bdfpxsfh</author><pubDate>Fri, 05 May 2023 12:05:16 +0800</pubDate><description><![CDATA[H为基类，R,G,B为子类，分别继承自H积累。]]></description><category></category></item><item><title><![CDATA[UVM组件是怎么连起来的？]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/128683145</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/128683145</guid><author>bdfpxsfh</author><pubDate>Fri, 14 Apr 2023 09:45:41 +0800</pubDate><description><![CDATA[如下图中的producer与consumer，producer在生产好数据后，直接通过绝对路径调用消费者的接口。当消费者的路径，名字，或者接口发生变化时，生产者的代码也必须跟着修改，即生产者和消费者直接高耦合。生产者，消费者都不需要实现接口，接口在中介fifo中实现，生产者和消费者直接负责调用中介即可。问：既想调用客户的接口，又不想关心客户的路径和名称，也不想关注客户的接口。为了避免中间商赚差价，m_imp_list，这个数据结构，直接连接到最终的客户。问：既想调用客户的接口，又不想关心客户的路径和名称。]]></description><category></category></item><item><title><![CDATA[UVM中树的数据结构]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604886</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604886</guid><author>bdfpxsfh</author><pubDate>Fri, 14 Apr 2023 09:44:35 +0800</pubDate><description><![CDATA[clone，要clone的数据结构是啥样的？本质是遍历如下数据结构。另外，也能深刻理解，clone的底层是调用copy，其本质是创建实体和copy。clone和copy遍历两个维度，一个是包含的维度，一个是继承的维度。子类的clone，如何clone基类的内容？build_phase，自定向下创建整个树。new函数的本身，嵌套创建。]]></description><category></category></item><item><title><![CDATA[AGC产品与技术跟踪]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129343494</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129343494</guid><author>bdfpxsfh</author><pubDate>Mon, 10 Apr 2023 12:36:57 +0800</pubDate><description><![CDATA[每周更新一次列举所见产品，技术，以及对个人工作效率提升的思考。]]></description><category></category></item><item><title><![CDATA[纹理技术问题总结]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129778947</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129778947</guid><author>bdfpxsfh</author><pubDate>Sun, 26 Mar 2023 15:17:25 +0800</pubDate><description><![CDATA[而GPU的开销主要是在切换纹理单元时，需要将之前的纹理数据从显存中清除，然后将新的纹理数据加载到显存中，这个过程也会消耗一定的时间。因此，绑定纹理单元的开销是比较大的，如果需要频繁切换纹理单元，就会对性能产生影响。总的来说，Bindless Texture适合需要大量纹理访问的场景，而Binded Texture适合纹理数量较少的场景。OPENGL绑定纹理单元的开销包括CPU和GPU两部分。CPU的开销主要是在切换纹理单元时，需要将纹理数据从CPU传输到GPU，这个过程会消耗一定的时间。]]></description><category></category></item><item><title><![CDATA[SIMT与SIMD的区别？]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129473944</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129473944</guid><author>bdfpxsfh</author><pubDate>Sun, 12 Mar 2023 11:58:10 +0800</pubDate><description><![CDATA[来源： SIMD指令和SIMT指令有什么区别？在出现SIMD和SIMT之前，占主导地位的是SISD（Single instruction single data）。但很快人们发现，在一些逻辑简单但计算量大的场景下，这些计算可以并行完成。因此，直接想到的解决方案就是多块芯片并行计算，即多核系统，与此对应的编程模型是多线程编程。多核系统的产生使得编程变得轻松，只需解决多线程互斥、同步等一些小问题即可。但很快有人意识到，从硬件的角度看，这么做很不划算。我们只是为了并行计算，按理说只需要多块计算元件和寄存器就行了，]]></description><category></category></item><item><title><![CDATA[page fault与segment fault的区别]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129472868</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/129472868</guid><author>bdfpxsfh</author><pubDate>Sun, 12 Mar 2023 10:26:45 +0800</pubDate><description><![CDATA[page fault与segment fault的区别]]></description><category></category></item><item><title><![CDATA[处理器的PPA量化学习]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/123950464</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/123950464</guid><author>bdfpxsfh</author><pubDate>Thu, 03 Nov 2022 09:28:32 +0800</pubDate><description><![CDATA[一个NAND， 与非门的面积。一个pixel的信息。]]></description><category></category></item><item><title><![CDATA[volatile的变量学习]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127625581</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127625581</guid><author>bdfpxsfh</author><pubDate>Mon, 31 Oct 2022 23:32:16 +0800</pubDate><description><![CDATA[3 “做饭”指令执行完毕，具体指的是饭做好了，而且必须盛到碗里而不是还放在锅里，保证干饭人来了后必须立刻能吃到饭。重排指令可能会导致功能出错？编译器可能会重排指令?CPU也可能会重排指令。2 “叫吃饭”时，一定要保证“做饭”指令执行完毕；1 “做饭”和“叫吃饭”的指令不能乱序；]]></description><category></category></item><item><title><![CDATA[UVM是怎么跑起来的？]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604828</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604828</guid><author>bdfpxsfh</author><pubDate>Mon, 31 Oct 2022 22:52:18 +0800</pubDate><description><![CDATA[UVM是怎么跑起来的]]></description><category></category></item><item><title><![CDATA[UVM的phase数据结构]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604714</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604714</guid><author>bdfpxsfh</author><pubDate>Sun, 30 Oct 2022 20:41:21 +0800</pubDate><description><![CDATA[UVM源码，继承关系，合作关系 展示。]]></description><category></category></item><item><title><![CDATA[UVM与桥梁模式]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604665</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604665</guid><author>bdfpxsfh</author><pubDate>Sun, 30 Oct 2022 20:38:12 +0800</pubDate><description><![CDATA[port和consumer之间？port与port之间的connect？1 将接口（想要扩展的功能）封装成另一个类来实现，以此和consumer解除耦合。consumer提供put函数，producer调用consumer的put函数。顺序关系，创建了了之后再传递，拿到上游的东西之后再传递给下游。cons:  路径变化，名字变化，传输方式变化。bottom-up的执行序列能满足。]]></description><category></category></item><item><title><![CDATA[UVM与模板模式]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604613</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604613</guid><author>bdfpxsfh</author><pubDate>Sun, 30 Oct 2022 20:35:13 +0800</pubDate><description><![CDATA[proc_1），还可以使用井号来提供参数赋值或覆盖的列表。]]></description><category></category></item><item><title><![CDATA[UVM与组合模式]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604602</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604602</guid><author>bdfpxsfh</author><pubDate>Sun, 30 Oct 2022 20:34:36 +0800</pubDate><description><![CDATA[背景#场景：验证平台中，各组件以一颗树的形式构成，每个组件都有自己的程序(demo_phase())。#问题：如何启动这些组件的程序？#方案 - 朴素：将各个组件的demo_phase()程序添加到traverse_demo_phase()中。]]></description><category></category></item><item><title><![CDATA[UVM与工厂模式和策略模式]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604552</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127604552</guid><author>bdfpxsfh</author><pubDate>Sun, 30 Oct 2022 20:32:11 +0800</pubDate><description><![CDATA[模式说明：指对象有某个行为，但是在不同的场景中，该行为有不同的实现算法定义了一族算法（业务规则）；封装了每个算法；这族的算法可互换代替（interchangeable）。UVM应用：模式说明：工厂通常是一个用来创建其他对象的对象。工厂是构造方法的抽象，用来实现不同的分配方案。应用场景：创建对象需要大量重复的代码。可以把这些代码写在工厂基类中。创建对象需要访问某些信息，而这些信息不应该包含在复合类中。UVM应用：run_test()]]></description><category></category></item><item><title><![CDATA[UVM与订阅者模式]]></title><link>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127603347</link><guid>https://blog.youkuaiyun.com/bdfpxsfh/article/details/127603347</guid><author>bdfpxsfh</author><pubDate>Sun, 30 Oct 2022 19:12:56 +0800</pubDate><description><![CDATA[模式说明：一个目标对象管理所有相依于它的观察者对象，并且在它本身的状态改变时主动发出通知应用场景：当其中一个对象的变更会影响其他对象，却又不知道多少对象必须被同时变更时。]]></description><category></category></item></channel></rss>