芯片验证时常用的Linux命令


👉本文思想是按实际需求给出例子。


快速入门

linux 的文件以文件树的形式保存,所以 linux 入门需要会切换目录,并查看目录的内容。 如下:

命令描述示例
cd切换目录,注意绝对路径和相对路径1)cd ~/shares/proj/vip/:通过绝对路径的方式,切换到/shares/proj/vip/文件夹;
2) cd ../sim/:过相对路径的方式,切换到上一级目录下的sim文件夹;
ls常看路径下的文件和文件夹目录1)ls:显示当前目录下的文件和文件夹目录 ;
2)ls *.sv:显示当前目录下后缀为 .sv 的文件 ;
pwd显示当前的路径1)pwd: 若此时在vip文件夹,则打印~/shares/proj/vip/
tree显示文件树1)tree:显示当前路径下的文件树;
2)tree ~/shares/proj/vip/:显示vip目录下的文件树

注:

  • 按Tab键可以自动补全;
  • ./表示当前路径 ;../表示上一级路径 ;
  • ~表示根目录;

一、修改、移动、复制和删除文件与文件夹

1.1 创建文件和文件夹

创建文件夹:

命令描述
mkdir verifier在当前目录下,创建一个新的文件夹,命名为 verifier
mkdir verifier/apb/apb_master在当前目录下,创建一个名为 ahb_master 的文件夹

创建新文件:

命令描述
touch ahb_master.sv在当前目录下,创建一个名为 ahb_master.sv 的文件

1.2 批量修改文件名和文件内容

修改文件夹或文件名:

命令描述
mv template.sv apb.sv在当前目录下,将文件名为 template.sv的文件 ,改为 apb.sv
rename 'template' 'apb' *将当前目录下,所有文件名中带“template”的改为“apb”。例如:template_xx.sv改为apb_xx.sv

修改文件内容:

命令描述
sed -i 's/template/apb/g' config.sv修改单个文件中的内容,将当前目录下的 config.sv 的文件内的字符串“template” 改为 “apb”。
sed -i 's/template/apb/g' *.sv批量修改文件内容,将当前目录下所有.sv的文件内的 字符串“template” 改为 “apb”
:%s/template/apb/g在vim中输入命令,修改文件内容也可以在vim中修改文件中所有的字符串“template”为 “apb” 。

1.3 移动、复制文件和文件夹

复制文件夹:

命令描述
cp -r ~/home/project/11 ~/home/project/zz当前在根目录/下,把 home/project 下的 11 文件夹,复制到 home/project /zz路径下。
-r 表示递归调用,不然无法复制文件夹中内容

移动文件夹:

命令描述
mv ~/home/project/11 ~/home/project/zz当前在根目录/下,把 home/project 下的 11 文件夹,移动到 home/project /zz路径下。

复制文件:

命令描述
cp uart.sv ../把当前路径下的文件 uart.sv,复制到上一级目录中。
cp uart.sv ../uart_driver.sv把当前路径下的文件 uart.sv,复制到上一级目录中,并重命名为uart_driver 。

1.4 删除文件夹和文件

1️⃣ 删除前询问是否删除
👉需求:删除当前目录下的 apb_master.v 文件

rm -i apb_master.v
//rm: remove regular empty file ‘apb_master.v’? y

2️⃣ 直接删除,删除前不询问
👉需求:删除当前目录下的 apb_master.v 文件

rm -f apb_master.v

3️⃣ 删除当前目录及目录下所有文件,且不会询问
👉需求:删除apb目录,及其一下所有的文件和子文件夹。

rm -r apb

4️⃣ 删除当前目录及目录下所有文件,且每个文件夹在删除前均询问
👉需求:删除apb目录,及其一下所有的文件和子文件夹。删除前均询问。

rm -r -i apb

注意:linux下没有回收站,请谨慎建议删除。

二、搜索文件和文件内容

2.1 搜索文件夹和文件

命令描述
find -name "*.sv"查找当前目录下所有以.sv为后缀的文件
find ../vip/ -name "*env"查找当前目录下所有带有“env”的文件和文件夹
find -size +1M查找当前目录下所有内存大于10M的文件

2.3 搜索文件中的内容

    我们一般都是使用 vim 看代码,比如你在看别人环境时,会经常性的要去看某一个类的实现或者是找某一个变量,那就可以在terminal 或者 vim 中搜索文件内容(在 VIM 中也可以使用 / 在指定的文件中查找。 )。如下:

命令描述
grep -n -i "i2c" top_env.sv
  或者
grep -ni "i2c" top_env.sv
在 top_env.sv 中搜索 i2c 字符串;
    -n 表示显示行号 ;
    -i 表示忽略大小写;
grep -n "i2c" *.sv在所有 .sv 文件中中搜索 i2c 字符串;
grep -n -r -w "i2c" ./vip/
  或者
grep -nrw "i2c" ./vip/
递归搜索 vip 目录以及子目录下的所有文件;
     -r 表示递归调用;
     -w 表示获取与整个搜索字符匹配的内容也就是只搜索i2c,类似i2c_vif都不会被检索到;

三、打开文件

除了使用vim打开一些文本和代码,比如有的时候需要在terminal 用命令打开excel 、pdf之类的文件,可以使用如下:

<~> xdg-open filename.后缀
<~> xdg-open uvm_reg.pdf
<~> xdg-open top.ods
...

【😊持续更新中…】

  • 11
    点赞
  • 75
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
FPGA原型验证是指通过使用FPGA(现场可编程逻辑门阵列)来验证某个芯片设计的功能和性能。在进行原型验证之前,首先需要对芯片的代码进行一些处理。 首先,需要将芯片的设计代码进行综合。综合是将高级的、抽象的硬件描述语言(如Verilog或VHDL)代码转换为底层的、物理、可用的元件代码。这个过程,设计代码会被转换成逻辑门、存储器和其他元件的结构。 接下来,需要进行序约束的处理。序约束是定义芯片设计各个逻辑元件之间的序关系和钟周期。这些约束会影响到FPGA的布局和布线过程,确保芯片能够按照要求的钟频率正确运行。 在进行布局和布线之前,需要进行逻辑综合和优化。逻辑综合将综合后的设计转换为逻辑电路,包括门和寄存器等。然后,进行优化以减小电路规模和功耗,同提高性能。 接下来,进行布局和布线过程。布局是将芯片设计的逻辑元件合理地放置在FPGA的资源上。布线是通过FPGA内部的可编程连线资源将逻辑元件之间进行连接。 最后,进行序分析和序优化。通过序分析,可以判断芯片在FPGA的逻辑元件结构和连线是否满足序要求,并进行必要的优化处理。 通过以上处理,芯片的代码会在FPGA上实现,并能够运行和验证其功能和性能。这种原型验证方式可以帮助设计人员在实际硬件环境验证设计,发现和解决可能存在的问题,最终提高芯片设计的可靠性和效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小verifier

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值