<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zch951127的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zch951127</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zch951127]]></copyright><item><title><![CDATA[Testing and fault tolerence考试要点]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/130651941</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/130651941</guid><author>zch951127</author><pubDate>Sun, 14 May 2023 19:01:15 +0800</pubDate><description><![CDATA[DfT学习要点大纲]]></description><category></category></item><item><title><![CDATA[Microelectronic学习章节总结（3）-- gate level to physical level design]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/130441975</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/130441975</guid><author>zch951127</author><pubDate>Thu, 11 May 2023 01:38:52 +0800</pubDate><description><![CDATA[有关晶体管和数字逻辑设计的东西]]></description><category></category></item><item><title><![CDATA[Microelectronic学习章节总结（2）-- data path和control unit设计]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/130441841</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/130441841</guid><author>zch951127</author><pubDate>Thu, 04 May 2023 04:44:39 +0800</pubDate><description><![CDATA[处理器的设计和SOC的一些部件的复习]]></description><category></category></item><item><title><![CDATA[Microelectronic学习章节总结（1）-- 计算机架构复习]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/130432602</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/130432602</guid><author>zch951127</author><pubDate>Sat, 29 Apr 2023 07:12:21 +0800</pubDate><description><![CDATA[处理器架构复习]]></description><category></category></item><item><title><![CDATA[Power Modeling and Analysis]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/125562612</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/125562612</guid><author>zch951127</author><pubDate>Fri, 01 Jul 2022 22:51:16 +0800</pubDate><description><![CDATA[针对CMOS逻辑电路，在晶体管上的损耗主要由两部分组成:
Ptot=Pstatic+Pdynamic
P_{tot}=P_{static}+P_{dynamic}
Ptot​=Pstatic​+Pdynamic​
PdynamicP_{dynamic}Pdynamic​: The power dissipated when the circuit is active.
PstaticP_{static}Pstatic​: The power disspated when the circuit is not]]></description><category></category></item><item><title><![CDATA[强化学习笔记（5）物理引擎ODE的使用与链接]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/124561134</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/124561134</guid><author>zch951127</author><pubDate>Tue, 03 May 2022 20:49:16 +0800</pubDate><description><![CDATA[文章目录一些废话环境安装链接
一些废话
笔者因为需要模拟仿真环境，但是没有找到合适的C++软件平台所以一直很苦恼，本来是想自己从头写一个物理引擎但是由于实在是东西太多了于是写了一半开始找库（后悔当初选了自己写这条路）。然后非常幸运的是找到了ODE这么一个C++开源的仿真环境于是有可以开心地搞事情了～
环境
Ubuntu 20.04
CMake 3.16.3
GCC 10.3
安装
从官网下载源码拿（这里最新的版本ODE 0.16.2来做例子），解压到自己喜欢的文件夹下。然后按照下面的流程一步步走，就是最简单]]></description><category></category></item><item><title><![CDATA[强化学习笔记（4） 使用SWIG和CMake给C++库创建一个Python接口wrapping C++ to python]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/124512420</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/124512420</guid><author>zch951127</author><pubDate>Sat, 30 Apr 2022 14:57:18 +0800</pubDate><description><![CDATA[文章目录一些废话环境准备文件夹结构
一些废话
在实际应用中笔者被一个问题困扰了很久，就是自己的C++写的环境没办法用上python搭建的深度神经网络和一些强化学习的库（实际是C++搞深度学习实在是恶心，python实在是太香了）。在实际工程中其实也存在这样的问题，因为实际上很多应用都是用C/C++写的。尤其是一些游戏，各种物理引擎渲染都是用C++写的，而且C++接口用起来比较优雅。但是这些软件的应用都没有python接口，而且python官方提供的python语言本身的C++接口Python.h也确实用起来]]></description><category></category></item><item><title><![CDATA[强化学习笔记(3)--TF==2.8 keras==2.8 tf-agents==0.12.0 环境下官网教程勘误]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/124191035</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/124191035</guid><author>zch951127</author><pubDate>Wed, 20 Apr 2022 13:26:00 +0800</pubDate><description><![CDATA[深度强化学习环境搭建bug记录
]]></description><category></category></item><item><title><![CDATA[强化学习笔记（2）深度学习tensorflow2.5以上版本环境安装]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/123936509</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/123936509</guid><author>zch951127</author><pubDate>Sun, 03 Apr 2022 16:07:25 +0800</pubDate><description><![CDATA[目前的强化学习趋势是和深度学习相结合，因此在配置环境时需要配置深度学习的那一套。这里详细描述一套可用的安装GPU开发套件和tensorflow2.6的流程。
系统环境：Ubuntu 20.04
显卡： MX150
python版本：python 3.8
pip版本： pip 20.0.2
『注：有很多博主说需要装conda，这里其实并没有必要，因为确实清理起来很麻烦，而且占用空间，关键是编程环境一般笔者就用这一个了，所以其实不用也没大所谓，有些同学如果以后用python作为主要开发语言，那就装一个吧。这里就]]></description><category></category></item><item><title><![CDATA[(1) Basic Terminology and Introduction]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/123320398</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/123320398</guid><author>zch951127</author><pubDate>Tue, 08 Mar 2022 23:47:53 +0800</pubDate><description><![CDATA[Introduction and terminology]]></description><category></category></item><item><title><![CDATA[强化学习笔记（1）]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/123038061</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/123038061</guid><author>zch951127</author><pubDate>Mon, 21 Feb 2022 00:14:58 +0800</pubDate><description><![CDATA[强化学习的大致结构和面临的一些主要问题
强化学习过程中有两个互动的主体，一个是智能体（Agent）另一个是环境（Enviroment）。智能体通过观测（Observation）环境的状态（State）按照策略（Policy）做出一定的行为（Action）。然后由环境再给予智能体一个反馈奖励（Rewards），让智能体知道其行为带来的后果是好的还是不好的。
智能体学习的目的就是找到一个合适的策略，在使用这种策略得到的一系列行为下，在环境中完成某个任务之后得到的累积奖赏达到最高。
主要面临的问题有：

可能在一]]></description><category></category></item><item><title><![CDATA[Timing Modeling and Analysis]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/115451979</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/115451979</guid><author>zch951127</author><pubDate>Tue, 06 Apr 2021 06:26:14 +0800</pubDate><description><![CDATA[这一章我们要阐明的是如何优化逻辑电路中与时间有关的参数，首先第一步依旧是建模。在建模前需要了解几个重要的参数，这几个参数需要在咱们的模型中进行表述。

arrival time:：一个给定信号准备好的时间点
required time：某个操作准备下一个节点所需的数据所需要的时间
slack：实际arrival time和预先估计好的arrival time之间的差（这部分时间可以进行调节）

图Fig1为一个模型例子，齐总圆形和方形的节点表示信号准备好的时间 i.e arrival time.连接各个节点]]></description><category></category></item><item><title><![CDATA[Multi-level Optimization (Algeraic & Boolean)]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/115445993</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/115445993</guid><author>zch951127</author><pubDate>Tue, 06 Apr 2021 01:02:20 +0800</pubDate><description><![CDATA[这一章需要阐明的是另一个不同的优化思路 multi-level optimization，这个方法与2-level optimization的区别在于其对逻辑电路的表达方式。2-level之所以叫做2-level是因为其表达式中只有两个层级，i.e 表达式的形式为( )+( )+…，其中()里的一定是一个单项式(monomial)。而multi-level则会有不止一个层级 i.e ()中可能是一个被使用公因子合并后的多项式，i.e (()()…())+(()()…())+…的形式。使用逻辑结构图来表示如下]]></description><category></category></item><item><title><![CDATA[2 level optimization]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/114994874</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/114994874</guid><author>zch951127</author><pubDate>Sat, 20 Mar 2021 04:11:29 +0800</pubDate><description><![CDATA[在刚接触数字电子技术的时候我们就学过karnaugh-map用于化简复杂的组合逻辑电路，作为EDA工具处理大型组合逻辑电路自然需要告诉计算机到底要怎么去处理这种组合逻辑的化简。通常而言，除了使用karnaugh-map以外还可以使用cube notation和truth table来表示同样的组合逻辑电路，当然化简的方法和思路也会不一样。但是化简最终达成的目标是一样的：

减少表达式中implicant(蕴含项)的个数
减少literal(变量)的个数

Cube notation
如图所示即为一个组合逻辑]]></description><category></category></item><item><title><![CDATA[Sharing and binding]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/114934381</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/114934381</guid><author>zch951127</author><pubDate>Wed, 17 Mar 2021 21:22:42 +0800</pubDate><description><![CDATA[文章目录SharingLeft-edge AlgorithmBinding
这两个方案提出主要是为了解决resource占用期间的硬件冲突的问题并且减少对硬件资源的使用。Sharing的主要思想是同一个硬件资源给同一类操作轮流使用，而binding则是将不同的操作绑定到与其功能相适应的硬件上。显然对于binding问题而言，一类操作可以对应不同结构而功能相同的实体硬件。
为了方便描述这些问题，这里引进了Compability modeling 和Conflict modeling两个模型。如图Fig1所示，]]></description><category></category></item><item><title><![CDATA[Scheduling]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/114909122</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/114909122</guid><author>zch951127</author><pubDate>Wed, 17 Mar 2021 05:05:53 +0800</pubDate><description><![CDATA[这一节中将要介绍的是集成电路优化中的Scheduling。这一部分主要的工作是安排灭一部操作的顺序，使得其可以充分利用时间和芯片上的资源。为了更直观地表达，这里选用的model是Sequencing DFG.
在scheduling的过程中，在实际应用中会有各种各样的限制，主要的限制有时间，片上资源，area等。基本的Scheduling算法有ASAP和ALAP。其算法如下Fig1中伪代码所示。


Fig1 ASAP and ALAP
ASAP的主要思想是先将启示的节点固定，然后在下一个时钟周期内安排上所]]></description><category></category></item><item><title><![CDATA[Hardware Modeling]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/114866560</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/114866560</guid><author>zch951127</author><pubDate>Tue, 16 Mar 2021 08:31:19 +0800</pubDate><description><![CDATA[目录

logic networks

state diagrams

Dataflow Graphs

对于硬件的建模其实有很多方式，前面一章中提到了的有使用HDL进行建模，当然硬件建模肯定不仅仅限于这一种方式。建模方式往往是根据需求来进行选择。为了方便分析系统的性能抑或是方便理解优化表达逻辑使用的硬件布局方式，这里使用了abstract model。这一类模型和HDL model一样可以分为不同的抽象等级，这里着重介绍在logic-level 下和architectural/RT-level 下的几个模]]></description><category></category></item><item><title><![CDATA[Introduction]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/114866391</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/114866391</guid><author>zch951127</author><pubDate>Tue, 16 Mar 2021 05:40:03 +0800</pubDate><description><![CDATA[目录

微电子设计主要平台和实现方式

微电子设计流程简介

模型抽象（modeling abstraction）

微电子设计主要平台和实现方式

目前而言对于集成数字电路的设计来说主要的技术有两种一种是ASIC另一种是FPGA。 这两者虽然说表达的逻辑一样而且也是芯片设计，但是这两种方式在物理层面上实现的方式不同。

组成ASIC的单元是MOS晶体管，目前来说主要的工艺有CMOS和FINFET。而FPGA设计则是大批量生产ASIC之前的工作。一般而言会先使用FPGA进行prototype的设计，如果测试]]></description><category></category></item><item><title><![CDATA[学习日志之microelectronic（13）——SPICE语言]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/106417494</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/106417494</guid><author>zch951127</author><pubDate>Fri, 29 May 2020 17:12:48 +0800</pubDate><description><![CDATA[1
]]></description><category></category></item><item><title><![CDATA[学习日志之PCB电路设计]]></title><link>https://blog.youkuaiyun.com/zch951127/article/details/106309804</link><guid>https://blog.youkuaiyun.com/zch951127/article/details/106309804</guid><author>zch951127</author><pubDate>Sun, 24 May 2020 07:42:00 +0800</pubDate><description><![CDATA[这几天突然想起来系统学习了一下PCB设计，原先本科的时候虽然有用过一段时间，但是都是自己完全从零摸索出来的东西。不是很系统，对整个设计的流程也不是很清楚，这两天主要就做了这么一些工作。接下来几天打算自己做实验，慢慢把efes的整个系统一步一步做出来最终希望能做出一块开发板什么的。

1. 元件原理图库的操作

在这里主要遗漏的知识点是原理图库的导入。这个可以直接从别人设计的原理图文件中导出一个原理图库，并且复制粘贴到自己的原理图库中。其操作是design-&gt;make schematic library]]></description><category></category></item></channel></rss>