<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qwe2508的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qwe2508</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qwe2508]]></copyright><item><title><![CDATA[linux awk的各种用法]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/138965727</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/138965727</guid><author>qwe2508</author><pubDate>Thu, 16 May 2024 16:14:40 +0800</pubDate><description><![CDATA[awk '{print substr($1, 1, 5)}' filename.txt  # 打印第一列的前五个字符。awk '$1 > 100 {print $1}' filename.txt  # 打印第一列值大于100的行。`awk` 是一个强大的文本处理工具，用于模式扫描和处理语言。`awk` 是一个非常灵活的工具，可以处理复杂的文本分析任务，支持用户定义变量、数组等高级功能。使用 `awk` 的内置变量，如 `NR`（当前记录数），`NF`（字段数量）等。使用 `-F` 选项来指定字段分隔符。]]></description><category></category></item><item><title><![CDATA[linux管道符的各种用法]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/138965578</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/138965578</guid><author>qwe2508</author><pubDate>Thu, 16 May 2024 16:11:55 +0800</pubDate><description><![CDATA[Linux 管道符 ([|](file:///c%3A/Users/shenzheng/Downloads/download.php#1%2C1-1%2C1)) 是一个非常强大的功能，它允许你将一个命令的输出作为另一个命令的输入。`tee`命令读取标准输入，将其内容输出到标准输出并同时写入一个或多个文件。管道符的使用可以极大地提高命令行操作的效率和灵活性，使得复杂的命令行处理变得简单。`awk`和`sed`是文本处理的强大工具，常与管道结合使用。使用`sort`和`uniq`命令处理数据。]]></description><category></category></item><item><title><![CDATA[Error casting p_sequencer, please verify that this sequence/sequence item is intended to execute]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/120129115</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/120129115</guid><author>qwe2508</author><pubDate>Mon, 06 Sep 2021 10:44:27 +0800</pubDate><description><![CDATA[1、在搭建UVM环境的时候出现这个错误，发现seq0里面 调用了`uvm_declare_p_sequencer(my_vsqr) 和seq0.start(p_sequencer.p_sqr0);不一致导致的，应该传入的sequencer是env.vsqr(其中vsqr是my_vsqr使用factor机制注册的新句柄)
...]]></description><category></category></item><item><title><![CDATA[python 在sublime上搭建谷歌翻译器平台]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/112986527</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/112986527</guid><author>qwe2508</author><pubDate>Fri, 22 Jan 2021 15:50:15 +0800</pubDate><description><![CDATA[1、 首先安装python相应的数据包，使用清华镜像源安装
pip install google_trans_new  -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple

需要requests 和google_trans_new  两个库来支持，其中google_trans_new 是google翻译所需要的库
2、然后安装sublime，直]]></description><category></category></item><item><title><![CDATA[system verilog如何使用二维动态数组]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/110496634</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/110496634</guid><author>qwe2508</author><pubDate>Wed, 02 Dec 2020 19:43:24 +0800</pubDate><description><![CDATA[program dynamic_array;
  
  //dynamic array declaration
  bit [7:0] d_array[][];
  
  initial begin
    //memory allocation
    d_array = new[3];        //首先创建第一层的
    
    foreach(d_array[i])
      d_array[i] = new[2];    //然后创建第二层的
    
    //assigning .]]></description><category></category></item><item><title><![CDATA[UMV平台的搭建]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/108888182</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/108888182</guid><author>qwe2508</author><pubDate>Wed, 30 Sep 2020 17:21:24 +0800</pubDate><description><![CDATA[在芯片验证中，验证是非常重要的一环，UVM是现在的主流，希望那些想做芯片验证的同学，这个教程能够帮你节省搭建平台的时间

1、需要一个VCS，这个在网上找教程吧，但是很多关于环境配置的东西可以参考我uvm的配置

2、搭建UVM平台

首先需要有一个uvm的源文件

uvm源文件以及一些demo

3、需要一个makefile，这个基本就是直接决定你的uvm能用不，代码如下


all: clean compile run

export seed ?=1        #export 就是可以在外界传参
]]></description><category></category></item><item><title><![CDATA[the two types of module port connections,by ordered list and by name,shall not be mixed]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/107961985</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/107961985</guid><author>qwe2508</author><pubDate>Wed, 12 Aug 2020 17:11:26 +0800</pubDate><description><![CDATA[我的case明明是按端口来链接的，但是却报错

mixed port connection is not allowed
the two types of module port connections,by ordered list and by name,shall not be mixed

这种原因是因为例化的端口中少了一个 .  ，比如a a(.clk(clk), rst(rst),.data(data));中间的rst没有加 . ,所以会报错

the two types of mod...]]></description><category></category></item><item><title><![CDATA[python如何写数据到csv文件中]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/107068381</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/107068381</guid><author>qwe2508</author><pubDate>Wed, 01 Jul 2020 17:38:38 +0800</pubDate><description><![CDATA[使用csv保存数据是一种非常常见的方式，csv数据也很方便移植到excel中去

经常会遇到这样的问题，我有一百行数据一百列数据，我应该怎么快速放到excel里面去，我的答案是先保存到csv中，然后再复制粘贴到excel中。

代码如下


import csv

results_file = open('results.csv','w', newline='')
list1 = []
for i in range(100):
    list1.append([num1, num2, num3, num4]]></description><category></category></item><item><title><![CDATA[如何使用vpd来dump波形]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/106661128</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/106661128</guid><author>qwe2508</author><pubDate>Wed, 10 Jun 2020 11:03:49 +0800</pubDate><description><![CDATA[fsdb是经常用来dump波形，但是使用的时候可能也会存在一些层次需要特殊设置才能dump，这样就会导致对于一些特殊情况较难处理，但是vpd波形是vcs自带的，所以对于某些情况就特别好用，将以下命令存在dump_vpd.do的脚本中，然后通过在仿真过程中使用ucli将脚本feed进去，这样就会dump相应的波形了，这样的好处就是可以指定相应的层次，而且是在仿真的时候feed进去的，也就意味着不用再编译了。


dump -add { dut_st.my_dut} -depth 0 -sc...]]></description><category></category></item><item><title><![CDATA[如何处理python多进程的中断]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/104609131</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/104609131</guid><author>qwe2508</author><pubDate>Mon, 02 Mar 2020 12:28:13 +0800</pubDate><description><![CDATA[from multiprocessing import Pool
import time, os

def excute_case(x):
    time.sleep(2)    
    for i in range(10):    
        print("iiiiiii = %0d",i)

pool = Pool(3)   #进程池里面放三个，每次只能执行三个进程，
pool.m...]]></description><category></category></item><item><title><![CDATA[使用python调用其他文件夹下的makefile]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/104553312</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/104553312</guid><author>qwe2508</author><pubDate>Fri, 28 Feb 2020 11:44:54 +0800</pubDate><description><![CDATA[由于业务需要跑仿真的时候将所有的测试用例放在不同的文件夹下面跑，所以需要调用不同文件夹下的make file


import os 
from multiprocessing import Process, Queue, Pool
import time, datetime

#首先判断文件夹是否存在，以免覆盖之前的文件夹了
count =0

for i in range(10):    #只...]]></description><category></category></item><item><title><![CDATA[python实现生产者消费者]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/104531839</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/104531839</guid><author>qwe2508</author><pubDate>Thu, 27 Feb 2020 10:58:40 +0800</pubDate><description><![CDATA[写这篇博客的原因是因为很多生产者消费者都在两个class里面，这会导致在集成的时候不是那么方便


import multiprocessing
import threading
from multiprocessing import Process, Queue
import time, random, os


listcase1 = ["route_{}".format(i) for i i...]]></description><category></category></item><item><title><![CDATA[如果安装Python psutil]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/104496217</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/104496217</guid><author>qwe2508</author><pubDate>Tue, 25 Feb 2020 13:48:29 +0800</pubDate><description><![CDATA[我不明白为什么很多人把这东西写的很复杂

1、python 安装就是pip install pkg(例如pip install numpy)，如果你是python3就需要用pip3 install，这种情况主要是因为一般服务器上都有两个python

2、python卸载就是pip uninstall pkg(pip uninstall numpy)

安装psutil流程：

1、pip se...]]></description><category></category></item><item><title><![CDATA[systemverilog怎么使用function的return以及给task返回值]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/103478518</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/103478518</guid><author>qwe2508</author><pubDate>Tue, 10 Dec 2019 16:50:10 +0800</pubDate><description><![CDATA[systemverilog的return默认就是function的name，代码如下，但是这种情况只能返回一个值无法返回多个值,如果有网友会多个返回值的可以在留言里面分享一下


class ecc_code;
    int ab;

    function bit[15:0] EDO(bit [10:0] EDI);
        EDO[0] = EDI[0]^EDI[1]^EDI[2]...]]></description><category></category></item><item><title><![CDATA[VCS compiler ‘VCS_HOME‘ not found.]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/93529800</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/93529800</guid><author>qwe2508</author><pubDate>Mon, 24 Jun 2019 21:44:51 +0800</pubDate><description><![CDATA[Error-[VCS_COM_UNE] Cannot find VCS compiler VCS compiler 'VCS_HOME' not found. Environment variable /usr/synopsys/G-2012.09/linux (/usr/synopsys/G-2012.09/linux/bin/vcs1) is selecting a directory...]]></description><category></category></item><item><title><![CDATA[systemvrilog 怎么优雅的格式化输出]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/93166148</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/93166148</guid><author>qwe2508</author><pubDate>Fri, 21 Jun 2019 10:19:07 +0800</pubDate><description><![CDATA[sv怎么格式化输出

for(int i=0; i&lt;8; i++)begin
    $display($sformat("hahahah[%0d]"), i);
end

其实和其他语言差不多，都是使用format函数来对他格式化输出%0d代表着整数，%s代表字符串

the object at dereference depth 0 is being used before it wa...]]></description><category></category></item><item><title><![CDATA[sv怎么格式化输出]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/91559745</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/91559745</guid><author>qwe2508</author><pubDate>Wed, 12 Jun 2019 16:42:44 +0800</pubDate><description><![CDATA[for(int i=0; i&lt;8; i++)begin
    $display($sformat("hahahah[%0d]"), i);
end

其实和其他语言差不多，都是使用format函数来对他格式化输出%0d代表着整数，%s代表字符串
]]></description><category></category></item><item><title><![CDATA[张强UVM debug]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/91444721</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/91444721</guid><author>qwe2508</author><pubDate>Tue, 11 Jun 2019 16:11:26 +0800</pubDate><description><![CDATA[这种错误往往就是你的命令输错了，比如你实例化的句柄是tr，你输成了tf，最快的办法就是将给出的提示（一般会用双引号提示出来）进行搜索，你会发现很低级的错误，一般错误报告里面会告诉你哪些行错了

这个错误就是相应的信号找不到了，需要修改

某个信号找不到了，需要去追这个信号是否存在或者路劲是否更改


	
the object at dereference depth 0 is b...]]></description><category></category></item><item><title><![CDATA[如果读取分割的数据集和label]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/88689764</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/88689764</guid><author>qwe2508</author><pubDate>Wed, 20 Mar 2019 15:24:14 +0800</pubDate><description><![CDATA[首先你需要给你的数据统一命名，也就是数据集和label的前缀是一样的，其次，两个在不同的文件夹下，这样就可以提出一种想法，如果文件是validation.jpg，label是validation.png，直接截取文件中的名字validation，然后根据路劲直接读取，如果路径是/data0/data/fenge，那么存在validation.jpg文件名的一定会存在validation.png，所...]]></description><category></category></item><item><title><![CDATA[python matplotlib这么同时显示多张图片在同一个图中]]></title><link>https://blog.youkuaiyun.com/qwe2508/article/details/88078746</link><guid>https://blog.youkuaiyun.com/qwe2508/article/details/88078746</guid><author>qwe2508</author><pubDate>Sat, 02 Mar 2019 17:36:29 +0800</pubDate><description><![CDATA[CIFAR10读进来的图像的的维度是（50000,32,32,3），插入以下代码就可以用了，

img_test = images_test[:32, :, :, :]

选取前32张显示


plt.figure()
for i in range(1,32):
    plt.subplot(4,8,i)
    plt.imshow(img_test[i-1])
plt.show()



这...]]></description><category></category></item></channel></rss>