Ahead of all

随着5G的推进,作为一只电路狗也不得不用 HFSS 来做高频电磁仿真了。本科时用过HFSS15仿过不少天线,瞬间回想起当年在 HFSS15 上辛苦用 VBScript 码脚本的时候,目前 HFSS 版本已经更新至18,2015年之后的版本开始支持 python 脚本,本质上应该是 IronPython 这个变种。

IronPython是一种以.NET和Mono实现的Python,由Jim Hugunin(同时也是Jython的创造者)创建。1.0版于2006年9月5日发布。
在随后的2007年,开发者决定改写构架,使用动态语言运行时让更多脚本语言能轻易移植到.NET Framework上。2008年,在微软发布.NET Framework 3.0/3.5、Silverlight之后,IronPython也发布了2.0版。目前最新版本是2.7,于2011年3月发布,支持.NET Framework 4.0。

这是 Wiki 对 IronPython 的说明,不过去官网看了看,最新版为2016年发布的2.7.7,功能已经非常完善,感觉不错。这个脚本语言跌跌撞撞了快12年,刚发出后就沉寂了很久,但毕竟有 Python 还有微软爸爸的 .Net 做后台,前途还是很光明滴。(听说幼儿园就要开始学Python了,溜了溜了。。

声明:HFSS这软件对脚本不太友好,如遇bug还请谅解!
更多功能还在完善,如有不足或需要请留言

Itroduction

Just for intergrated circuit design project aligned with HFSS software. With GUI based on IronPython, you can save a lot of time to repeat the same operation.

本脚本用于HFSS联合Cadence、ADS等软件进行芯片级电磁仿真,可以省去大量重复工作,提高效率。


This script is based on Ironpython(Python 2.0+) and .Net Framework 2.0+, so you should confirm your computer is along with these enverionment above. And you should confirm that the version of HFSS is 16(2015)or higher version.

As for the confidential processing parameters, some data has been removed from the backstage. You'd better add these parameters according to your design. Or you can refer to the script GUI frame and wrapped functions, and deliver your own scripts.

脚本基于Ironpython(Python2.0+)和.Net Framework 2.0+,使用前先确保电脑已配备上述环境。同时HFSS软件版本高于HFSS16(2015)。

由于部分工艺参数保密,所以后台已经移除工艺数据,使用前最好按照自己所使用的工艺进行参数补充。或者可以参考本脚本的图形界面框架以及部分已经封装过的函数,开发自己的脚本来使用。

详细的文档介绍请移步:
GitHub - PhosphorW/HFSS-GUI-Scripts
Github 访问有问题的也可以去我的 Gogs 上查看:
Gogs - HFSS-GUI-Scripts

Usage

  • New/Opne Project -> New/Open HFSS Design -> Menu-Tools -> Run scripts -> Choose xxx.py

Ver1.2.0

Existed Panels

  1. Panel1: Scale_Unit Panel Set unit scale in HFSS view, 'um' or 'mm'.
  2. Panel2: Create_Media_Box Panel Create media lawyers in IC chip.
  3. Panel3: Create_Metal_Material Panel Generate metal material

Existed Functions

  • SetModelUnits()
  • CreateBox()
  • AddMaterial()

ChangeLog

[Ver 1.2.1] - 2017-12-12

Fixed

  • Fix the bug that cannot generate 2 or more metal materials together.

Refactored

  • Automatically adjust the view after using Panel1 to create box.

[Ver 1.2.0] - 2017-11-24

Added

  • Panel: Create_Metal_Material

[Ver 1.1.2] - 2017-11-24

Added

  • Function: AddMaterial()
  • Create_Media_Box Panel: Generate material
  • Create_Media_Box Panel: Error message window

Refactored

  • Refactor the maximized window and its dragging problem.

[Ver 1.1.1] - 2017-11-20

Refactored

  • Optimize interface.

Fixed

  • Fix some stutters in scripts.

[Ver 1.1.0] - 2017-11-20

Added

  • Function: SetModelUnits()
  • Panel: Scale_Unit

Changed

  • Create_Media_Box unit can be choose.

[Ver 1.0.0] - 2017-11-20

Added

  • Function: CreateBox()
  • Panel: Create_Media_Box