更应该注意一个细节问题:BSD在开发SPICE那时,就已经Open Source么?

经过小小的考证(所以,我说这个文章是“调侃”),原来大家非常熟悉的BSD License最早可能1982年(注意SPICE项目是在1975年开发完成),换句话说,在1975年到1982之间这段时间,SPICE是BSD研究员专用的玩意,而可能1982年之后Open了(这个纯粹推测)。FSF(Free Software Foundation)在整个计算机软件工业始终扮演诙谐幽默的角色。在FSF的关怀下,GNU计划有一个电路仿真工具叫做GNUcap的项目(项目主页)。我们知道理查德·斯托曼(Richard Matthew Stallman)在1983年9月27日宣布GNU计划(尽管很多认为GNU计划真正开始在1984年),而GNUcap的0.11版本是在1993.07.26(历史版本),不难推算,GNUcap可能在1991或者1992发布的,那时正直MS DOS行销的年代,所以大家会发现,怎么会有PSpice的DOS版本,哦哦,原来PSpice这么悠久的历史的了。

历史就是这样演绎:

“Gnucap is the Gnu Circuit Analysis Package.

The primary component is a general purpose circuit simulator. It performs nonlinear dc and transient analyses, fourier analysis, and ac analysis. Spice compatible models for the MOSFET (level 1-8), BJT, and diode are included in this release.

Gnucap is not based on Spice, but some of the models have been derived from the Berkeley models.”

关键位在最后一句,呵呵,明白人都知道,早年GNUcap和Spice没有很大关系,可能是之后Spice用BSD License了,才有关系。这样,就可以肯定,Spice早年封闭的授权体。

所以,现在在世人面前就有两个电路仿真程序,一个是加州大学伯克莱分校的Spice,一个是FSF的GNUcap,而他类似的项目都是这两个的延伸发展。当然,电子&半导体工业界更趋向Spice,毕竟用了30多年,又BSD了,所以有了上面这么多商业版本。

而在我的Debian GNU/Linux下,编译安装了最新的GNUcap0.36和NGspice(项目主页):

NGspice is a mixed-level/mixed-signal circuit simulator. Its code is based on three open source software packages: Spice3f5, Cider1b1 and Xspice.NGspice is part of gEDA project, a full GPL'd suite of Electronic Design Automation tools.

NGspice直接是基于Spice开发的程序,有一定的工业说服力和符合行业标准(完全没有鄙视GNUcap,只是GNUcap需要更长远的取长补短的发展,除了Free Sotfware更要符合电路“实际”,就好像R和SPSS,SAS在工业上的应用)。这里,小星就用NGSpice简单执行一个example例子,见笑:

a.在Debian上用apt-get安装,必须添加&使用testing和unstable版本的non-free源(很可能是开发者的许可证问题没有让NGSpice进入main仓库),然后执行:sudo apt-get install ngspice

*建议到Debian的NGSpice上(这里)下载源代码编译安装(./configure --prefix=/usr/ || make || sudo make install)。

b.当前目录新建文件夹,执行:mkdir test | cd test

c.在test目录下编写一下main.deck文本(右边是对应的电子电路图,如果你慢慢对着代码和图,你一定明白代码说什么东东):

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

A Berkeley SPICE3 compatible circuit

.tran 1e-5 2e-3

vcc vcc 0 12.0

vin 1 0 0.0 ac 1.0 sin(0 1 1k)

ccouple 1 base 10uF

rbias1 vcc base 100k

rbias2 base 0 24k

q1 coll base emit generic

rcollector vcc coll 3.9k

remitter emit 0 1k

.model generic npn

.end

linux 系统下开源软件 ngspice 仿真实例,调侃Spice历史和GNU/Linux下做Spice电路仿真...相关推荐

  1. Linux系统中的软件管理详解(下)—搭建网络软件仓库及第三方软件仓库

    Linux系统中的软件管理详解(下) 5.软件仓库管理命令 a)dnf 命令: 管理软件仓库中的安装包 dnf repolist ##列出仓库信息clean all ##清除系统中已经加载的仓库缓存信 ...

  2. linux下的GPU测试软件,Ubuntu等Linux系统显卡性能测试软件 Unigine 3D

    Ubuntu等Linux系统显卡性能测试软件 Unigine 3D Ubuntu Intel显卡驱动安装,请参考: ATI和NVIDIA显卡请在软件和更新中的附加驱动中安装. 这里推荐: 运行后,F9 ...

  3. 兼容软件多的linux,现在有多少种同Linux系统兼容的软件?

    2019-02-13 linux 系统怎么安装软件? 现在一般是使用 RPM ,YUM 和 APT 来管理软件包. 软件包常用的也就是,查找软件包,安装,卸载,升级.这几个功能. RPM 比较经典,但 ...

  4. centos 卸载软件_一篇看懂!详解-Linux系统中安装软件的三种方法

    Linux系统中安装软件的三种方法 注:本文主要以CentOS为例介绍常用的安装方式,其他版本linux在文章底部 Linux系统中怎么安装软件,首先说一下应用程序与系统命令的区别: 1.文件位置 系 ...

  5. LVS(Linux Virtual Server,Linux虚拟服务器)开源软件创始人——章文嵩

    章文嵩是技术专家,也是LVS(Linux Virtual Server,Linux虚拟服务器)开源软件创始人,曾经是TelTel公司的首席科学家,ChinaCluster的共同创办人.他对自己的看法是 ...

  6. Linux系统中的软件管理

    Linux系统中的软件管理 1 Linux中软件包的类型 2 软件包的名称结构 3 rpm命令管理软件包 4 本地软件仓库的搭建 4.1 系统软件仓库的作用 4.2 搭建方法 5 dnf 软件管理命令 ...

  7. putty怎么远程控制linux应用,如何使用linux系统远程操作软件putty!

    原标题:如何使用linux系统远程操作软件putty! linux小白到大神的成长之路:如何使用linux系统远程操作软件putty! 本经验由宗龙龙原创,全文共500多字,阅读需要14分钟,如果文中 ...

  8. putty 32位_了解linux系统远程操作软件,putty的安装过程!

    linux小白到大神的成长之路:了解linux系统远程操作软件,putty的安装过程! 本经验由宗龙龙原创,全文共600多字,阅读需要14分钟,如果文中存在错误,还请大家多多指点,我会积极改进的! 前 ...

  9. Linux专家警告开源软件日益吸引黑客

    Linux expert warns of open source's growing appeal to hackers Linux专家警告开源软件日益吸引黑客 <purple endurer ...

最新文章

  1. 最新!这所顶尖大学录取线全国第三!毕业生深造率超九成!
  2. DAC输出波形的最大频率是多少?
  3. PMP之工具与技术---假设条件和制约因素
  4. ubuntu16.04+xfce4截图、终端调出、锁屏的快捷键设置、去掉Alt+鼠标移动屏幕的功能、安装thunar、小键盘问题、设置终端背景
  5. 一面微创题--字符串逆序输出
  6. ubuntu安装谷歌浏览器 typora+出现编码错误‘ascii‘ codec can‘t encode character ‘\u6b66‘+docker里安装tensorrt报错
  7. 自动驾驶——多目标跟踪模块的学习笔记
  8. 问题五十二:怎么用C++实现矩阵运算
  9. QQ for Linux 安装和卸载
  10. 全地形机器人HEXA评测:不做玩具 钻洞爬台阶可编程 | 评测
  11. Linux安装PHPwind
  12. 计算机高特效吃鸡游戏主机配置单,畅玩主流游戏吃鸡LOL组装电脑配置清单
  13. c语言鸡兔同笼的程序,C语言:鸡兔同笼问题
  14. kindle无缝迁移笔记
  15. Ubuntu系统下python编程入门
  16. mysql的auto_increment报错1467
  17. 个人公众号注销方法_微信公众号注销后可以再申请吗 公众号注销帐号方法介绍...
  18. 高数 | 【微分方程】已知常系数微分方程特解,反求原方程
  19. 用NEON intrinsic实现RGB转YUV420SP(NV12)
  20. 环迅支付匠心独具,打造跨境收款解决新方式

热门文章

  1. HY-SRF05超声波测距模块的使用
  2. Apache下favicon.ico文件找不到的问题
  3. python图形界面教程(tkinter)
  4. 技术员教你如何在PE下重装系统(包含win10和win7)
  5. 对Zebra的一点思考(Think of Zebra)
  6. iView Table 前端分页
  7. 什么是软件需求,什么是功能需求?——论需求的三个层次和三个方面(2)
  8. 1.pytorch lightning之验证与测试
  9. 世界四大名刊Cell,Nature,Science,PNAS
  10. linux之基础shell脚本编程1 基础变量赋值