Spectre X (Spectre 191) 仿真器的使用经验分享

Cadence的Spectre工具的最新版Spectre191提供了新的功能:Spectre X。根据官方的宣传是利用了比较新的数学计算方法来加速仿真,在不牺牲精度、不删减节点的情况下即可以获得明显的加速。同时还有xdp功能来高度并行化仿真,以实现post-layout仿真。

对于模拟电路工程师来说,仿真速度一直都是一个痛点。看看隔壁的机器学习天天GPU加速,我们这边还停留在上个世纪:16线程CPU都还难以跑满。跑一个Sigma-Delta ADC动辄就是等一天,后仿出个性能指标那更是可遇不可求。如果你的电路还有一些需要大量模拟结果去收敛的算法,那就全靠MATLAB建模吧,SPICE级别的仿真是不可能了。既然Cadence如此宣传,那肯定要赶紧体验一下。

继续阅读Spectre X (Spectre 191) 仿真器的使用经验分享

简单的一维随机游走问题的解析解及其在电路问题中的应用

其实应该更准确的称为“First Exit Time”问题:我们考虑到一个粒子,其初始位置在X=0处。每个时刻其向左或向右走\Delta_X距离,其中\Delta_X服从均值为\mu,标准差为\sigma的正态分布,同时在坐标轴上,在-\frac{l}{2}\frac{l}{2}处各有两个吸收壁,当粒子碰到吸收壁时,即消逝。求随着时间增加,粒子仍然未被吸收的概率密度分布。

继续阅读简单的一维随机游走问题的解析解及其在电路问题中的应用

在Synology上面直接搭建WebSocket反向代理

家里的宽带是上海联通,访问新加坡、日本线路基本都是可以的。但是公司宿舍是一个奇葩的电信共享网络,几乎无法打开除了CN2线路以外的任何海外网站。丢包率每个都是>80%。但是穷人根本用不起CN2线路,最简单的办法就是在家里搭建一个反向代理,电信-联通-国际出口,体验还是不错的。

继续阅读在Synology上面直接搭建WebSocket反向代理

在 ArchLinux 下利用Caddy PHP-FPM MariaDB 迅速搭建 WordPress 博客

其实对于个人博客来说,任何一个Web Server都足够了,无论是Apache、Nginx、Lighttpd还是Caddy。这里选择Caddy,主要是自己可以去Let’s Encrypt自动获取SSL证书,也不用再去关注证书过期或者配置crontab来定期更新了。

继续阅读在 ArchLinux 下利用Caddy PHP-FPM MariaDB 迅速搭建 WordPress 博客

Windows 10下临时访问EXT4分区:利用VirtualBox挂载整块硬盘

其实最初的目的只是为了把一个EXT4分区的硬盘里面的内容拷贝到VirtualBox的Linux虚拟机,网上搜索了一下也没有什么特别靠谱的Windows10的EXT4文件系统兼容软件的方案, 再考虑到有权限、软链接这些东西, 索性尝试直接挂载整块硬盘到VirtualBox的Linux虚拟机,意外发现这其实非常简单并且效果也很好。

这个方法也很适合模拟IC虚拟机的仿真设置,可以添加一个额外的硬盘当临时大空间来保存仿真数据,随时添加、访问,用后销毁格式化。

继续阅读Windows 10下临时访问EXT4分区:利用VirtualBox挂载整块硬盘

Cadence Virtuoso CentOS 6 & CentOS 7的依赖安装清单及脚本

在实验室或者自己的虚拟机每次安装一台新的服务器,总是要安装系统和依赖的(不过可能有更科学的安装方法,直接同步安装),其实Cadence Virtuoso IC616 IC617的依赖一共就那么几个,但是网上的很多入门教程都不够全,后面用到一些功能的时候又要去根据报错来重新安装,这里我也整理一份清单和安装脚本供大家参考,可以把这个脚本放在自己的服务器上利用curl | bash执行。

另外在这里多说一句话,如果各位的服务器和客户端采用ssh X forwarding方式,客户端是Windows系统的话(Linux肯定是没有问题的),推荐本地的X11采用Cygwin的,我已经试用了市面上几乎所有软件,开源的闭源的,都更新的不够频繁,大家都会出现卡顿和启动延迟过高(开一个新的应用窗口出来要等3s以上,很致命),用Cygwin的X11是体验最好的。

继续阅读Cadence Virtuoso CentOS 6 & CentOS 7的依赖安装清单及脚本

利用Perl脚本自动添加CentOS 6系统用户和初始化VNC密码

在学校里面维护EDA软件的服务器,经常遇到的情况就是来了一批(不止一个)学生做项目,需要给他们添加服务器的账号和一个初始化的密码,所以写了一个简单的Perl脚本来做这个事情。脚本的内容其实是非常简单的,供大家参考,在这个基础上可以添加一些额外的功能,譬如直接自动根据/dev/random来产生密码,并且记录下来密码自动发给用户的E-Mail,因为我比较懒就没有搞这些功能……

继续阅读利用Perl脚本自动添加CentOS 6系统用户和初始化VNC密码