SOS使用手册
SOS是Cliosoft针对集成电路设计现状,提出的于现有EDA工具无缝连接的一种解决方案,实现多时区直接设计数据协同设计,不同工程师之间数据协同工作,版本管理,版本控制,工作区管理,发布涉及版本数据等项目管理功能。
使用SOS前需要将sos工具以及license进行load操作。无论是module或者其他load方式,需要在$PATH中出现SOS绝对路径,确保sos,sosadmin等工具可以直接启动。
建立一个Server
注:Server的建立一般是依据不同的工艺进行,每一个工艺建立一个Server
利用拥有权限的账户load整合SOS程序以及license,然后启动sosadmin
正常启动sosadmin之后会出现如上所示的对话框。
点击“New”后出现下图所示对话框
此时,你需要考虑的是存储空间是否充足,如果存储空间充足,可以使用local方式,如果存储空间并不是很理想,就使用Cache模式。
这一块就是设置是否需要使用cache方式建立Server,使用cache方式建立的Server在用户populate之后所有的文件都是以link方式存在的,所有的文件都是link到cache存储空间,因此更节省存储。
依次填写相关信息,在填写之前可以直接选择Recommend按键来实现自动填写,然后根据自动填写的内容进行修改。
注:无论是Host name选项还是Cache Host选项,都需要dns解析hostname,否则无法成功建立。所有端口不可重复使用。
填写好之后点击OK即可,如使用cache方式,大致内容如下图所示:
在Server创建好之后,需要启动Server,点击主窗口
按钮启动Server。启动后选中新建的Server,点击
按钮确定是否启动成功。
建立Project
在建立好Server后并且成功启动后,就可以直接建立Project。
选择建立好的Server,点击Projects
弹出如下对话框:
点击New添加一个新的Project。
填写Project的名字,选择Project存放数据的路径,以及这个Project的Admin用户,多个Admin用户之间用逗号分隔。Comments内容可写一些项目描述,这个内容并没有具体的意义,也不对新建的Project内容有任何影响。填写好之后,点击OK,出现如下所示的对话框。
这时,一个Project在SOS上的基本框架建立完毕。
配置Project的配置信息(sosd.cfg)
在新建好的Project中根据
显示的路径进入到相关目录下,进入到setup目录,找到sosd.cfg文件,Vim编辑。
注:初始的sosd.cfg文件并没有多少信息,需要手工进行添加。在sosd.cfg配置文件中- -代表注释。
根据项目要求,设置是否为openworld
可以添加修改ADMIN用户信息
ACL权限控制,我这里分了schematic与layout两个组,根据权限信息添加人员,人员于人员之间用逗号分隔,最后用分号结尾。
权限基本设置完毕。高级权限请参考SOS相关手册。修改完成后需要在主窗口对该Server进行一次config Reread操作,点击Reread Config按钮即可,会提示配置信息是否出错。
为Project建立基本的数据信息并link工艺信息。
依次建立Server目录、Project目录以及个人目录。
mkdir –p /sos目录/server目录/project目录/ADMIN用户目录/
Admin用户建立好目录之后进行基础数据和信息的配置。
使用对应sosd.cfg中的ADMIN用户进入到ADMIN用户目录后,一次根据Project建立需要的目录信息。
例如:mkdir project project_tmp project_sim ANA_STD
建立一个cds.lib文件(touch cds.lib).
使用vim工具修改cds.lib文件,内容大致如下。
因为经常集成virtuoso使用,所有空行上面的一些DEFINE都是一些virtuoso的基本内容
主要看INCLUDE一项,指向工艺的绝对路径下的cds.lib文件,在指向文件前,要先编辑工艺下的cds.lib,因为有一些工艺的cds.lib文件自带了一些定向内容,但是变量设置方面可能出问题,如果有问题,可以将原cds.lib中的设置信息转移到这个文件中。
SOFTINCLUDE一项指定的cds.lib.local是用户可以自定义一些cds.lib的内容,但是在sos服务器中并不存在,每个用户可以自定义,自行引用,也可以不定义。
在最下面的四行DEFINE目的是将SOS中的目录对应到本地目录。
Create信息到SOS。
使用ADMIN用户load相关的sos工具与license,使用启动命令sos启动sos工具。启动后界面如下:
依次点击File-new workarea
选择Server Name,即为之前建立的Server,选择Project Name,即为之前建立的Project。
图上所示的权限为选择哪种存放的方式,如果选择Local Copies 则所有的文件都会存在本地目录中,大量占用存储空间,选择Links to Smart Cache 方式即为Links方式,如文章前面所说,全部文件都link到Cache存储中。
我们这里选择links to smart cache方式。
点击OK,建立完成。
注:在建立Server的时候如果没有建立Cache Server,这里则不可选择links方式,只能选择local copies方式。但是后期可更改为link方式,需要人力比较大。
在左边的
下会显示当前目录信息,依次选中(四个文件夹,一个cds.lib文件,其他不需要),点击Create上传到SOS服务器。
Create完毕后,点击选择
根目录,选择菜单栏Tree选项,如下图:
在Populate完成后,返回terminal,ll –a查看cds.lib文件是否为LINK文件,如果是,操作完毕。
其他用户进行配置并Populate数据信息。
其他有权限用户在使用过程中,建立目录、建立workarea的方式同上,区别在于普通权限用户无需Create目录结构到SOS服务器中,只需要在建立workarea之后populate即可。
5)与virtuoso进行SOS集成。
所有需要集成使用的用户,需要在加载virtuoso工具、sos工具及对应license后,输入setup_cds_libmgr_menu命令,按Y确认将SOS集成到virtuoso中,如下图所示为集成成功,在左侧Library中显示相关工艺信息则cds.lib文件内容书写正确,如未出现工艺信息,则需要修改cds.lib文件。
权限管理
在SOS所有操作都进行完毕后,需要对目录操作权限进行一次设定,需要用ADMIN权限用户在对应的ADMIN目录中打开SOS程序。
选择根目录,点击菜单栏Modify Attrs – Source File/Dir……(Source File/Directory)配置目录Owner以及Write Access权限,确保只有Owner用户可以修改根目录结构,其他用户无法修改。
按此操作,依次选择目录,对目录的Owner或者Group进行权限管控,确保没有权限的用户或者组无法进行非法访问。
用户操作。
用户在使用virtuoso操作之前,需要进行一次Updata,在操作的过程中,如果需要修改某些内容,需要对内容进行一次check out对操作的内容进行一次锁定,在操作完成后check in解除锁定。
用户新建的内容需要先Create写入到SOS服务器中。
总结:以上即为SOS进行数据管理和权限管理的基本操作,高级操作请在本基础上参考SOS相关操作手册。建议SOS使用单独的服务器存放数据,对于Cache数据的存放目录,需要SOS服务器与用户登录的服务器均可以同时访问并且建议路径保持一致。
建议使用Link方式建立Server并且要求研发用户以Link的方式Check数据,这样可以降低存储空间的使用率,也可以更好的管理SOS。
使用Link方式也存在一定的不足,如发生需要数据迁移的需求时,需要所有用户将需要用的数据Create和Check in,然后管理员切换到local copies方式全部check出数据然后进行迁移。