现在,依据IP的EDA规划流程面临着两大应战。首要,有必要供给办法技能,用于测验包括IP组件规划的可靠性和质量;另一方面,有必要保护IP供货商和规划者的知识产权。第三方IP核的运用的确能够进步芯片规划功率,可是供货商将IP核交给到客户的进程却并非开门见山。关于客户来说,为了测验验证IP核,它有必要具有必定的可见性。可见性包括IP的仿真、结构性了解以及特性的详细描绘。客户取得的可见度越高,就越简单将IP核集成到自己的FPGA规划中。而关于供货商来说,IP核具有必定的保护性,有必要避免未经授权运用或仿制IP核,而客户需求恰恰与之相对立。因而交给IP核的程序有必要权衡这两种彼此对立的需求。假如客户获取关于IP规划的信息过多,就或许呈现未经授权而运用或仿制该IP核,然后下降其价值,影响到规划者和供货商的利益。
现在有一些办法侧重保护供货商的利益,如水印技能,便是将数字签名嵌入至IP组件中,没有供货商的答应,客户就无法去除数字签名,实例化IP元件就具有必定危险。水印技能的首要约束在于只能保护供货商组件实例化的合法性,却无法真实躲藏IP,由于经过元件体系的反向工程仍能够获取IP核的内部信息。
JavaCAD架构中选用了另一种有用安全的IP评价测验办法。规划者能实例化第三方的IP元件,一起能够结合自己规划的模块一起仿真。不同IP供货商供给的多个IP核也能够一起进行仿真,一起确保各个供货商及用户的知识产权不受损害。IP用户与供货商能够洽谈仿真期间能够获取的信息量。JavaCAD是恰当灵敏的、以事情驱动的仿真东西,规划者能够在java程序中直接选用结构与行为级混合的编写办法。
JavaCAD架构
规划者能够针对不同笼统层次指定模块行为。现在JavaCAD支撑门级、寄存器传输级,一起在行为级上也有一个完结东西。JavaCAD环境彻底支撑混合形式的体系描绘,例如某些规划元件是RTL级言语描绘的,而其他的是门级描绘。规划模块能够是本地模块也能够是长途模块。本地模块在IP用户端的java虚拟机(JVM)上工作,而长途模块能够经过Internet拜访。一般说来,长途模块均是在IP供货商的JavaCAD服务器上工作的。
图1中描绘了JavaCAD的概念性体系结构。用户在JavaCAD客户端上完结一切的电路规划,包括供应者供给的IP元件。供货商能够经过JavaCAD服务器与客户端进行通讯。设置仿真参数时,用户和供货商洽谈每个元件能够拜访的功能与本钱模块类型。有一些模块需求供货商供给在线协助,当然这得花费额定费用。例如,不必得知封闭式IP元件的内部信息,用户就能够经过整个规划的故障模拟精确地评价易测性。
假如JavaCAD客户端的仿真东西需求了解IP核的完结进程时,JavaCAD客户端就或许要求供应者工作仿真子程序。JavaCAD底板凭借客户端与服务器之间杂乱的网络通讯彻底荫蔽起来。JavaCAD吸收了Java面向方针的特征,这样能够将程序高效地映射到现代数字体系中依据元件的规划原语。JavaCAD的要害特性是能够处理包括本地组件(用户一切的)与长途组件(IP供应者一切的)的体系规划。任何规划或仿真东西都能选用JavaCAD协议处理长途组件。在JavaCAD中体系级硬件描绘言语(HDL)则用Java言语编写。
JavaCAD架构实际上便是java程序包的调集,有必要由用户与供货商一起运用,缺一不可。JavaCAD底板是用java言语编写的程序包,一般称为JavaCAD根本包(JFP),能够整合到任何规划环境中。IP供给者、用户都有必要运用JFP。元件和规划都是根本包的子集。规划规范要求实例化规划组件的JavaCAD类。衔接器将本地模块与长途模块衔接在一起,确保模块之间的事情正常工作。定制的衔接器能履行模块之间的通讯原语。
履行长途模块是以Java长途办法(RMI)为根底,RMI是类似于CORBO的协议,RMI保留了Java方针模块的原语,然后使散布的方针愈加便利履行并运用。JavaCAD中选用RMI的首要特性是:1)不必凭借二进制代码就能在本地创立长途类的实例;2)调用长途类的办法,并恰当处理参数和返回值;3)确保客户端-服务器端通讯的安全性。
并非一切的长途模块都是规划者需求工作的,一般履行的都是包括IP相关信息的办法。IP核的供给者需求规划一个专门的模块,用于清晰阐明哪些办法是能够让客户下载的,哪些办法能够经过Internet网络拜访。
JavaCAD是事情驱动的仿真东西,支撑多种事情类型,由调度程序进行调度履行。多个调度程序能够一起工作,然后JavaCAD也支撑同一规划的协同仿真。
安全性与IP保护
安全性是JavaCAD最重要的议题。客户端与服务器端彼此作用的紧密性引发了一些问题,有别于传统的依据Internet的客户端—服务器端办法的问题。当时情况下,客户与供给商还没有到达彻底信赖对方的程度,一起客户端与服务器端的通讯有必要避免第三方的侵入,这便是保护IP核的意图。JavaCAD采纳RMI功能及增强安全性的java模块处理这些问题。
针对第三方的侵入,RMI协议能确保IP用户与供给商之间的安全通讯。协议中运用一个自定义的通讯端口,规则了IP客户端与服务器端都认可的安全级别。
从供给商的视点来考虑,JaveCAD将长途模块规划分红三部分:公共部分、RMI剩余部分、私有部分。IP用户能够下载公共部分并集成到自己的规划中。公共部分中包括某些组件中不受保护的办法的可下载代码。用户有必要下载RMI剩余部分,并经过剩余部分调用长途办法。IP用户需求经过RMI剩余部分才干调用私有部分的办法,私有部分一向坐落供给者的服务器上,其代码不会转移到客户端。
从用户的视点来考虑,JavaCAD中为了完结对客户端的保护措施,在RMI中选用了一系列有用可行的参数装备。将每个模块都和衔接器绑定在一起,这种办法能够使得JavaCAD仿真东西能彻底避免传达规划中实例化的其他模块的灵敏信息,包括特点及其彼此联络。履行某些仿真时,长途IP模块或许需求其端口的一些信息,此刻JavaCAD经过RMI将这些信息传送到客户端。
运用者从供给商处下载得到的公共部分和RMI剩余部分的类时,JavaCAD将这些类标上“非可信赖”的符号,因而用户端无法履行这些类。例如,由这些类工作的办法不能读取或删去用户的文件体系。规范的RMI安全管理器使得各种办法只能经过供货商的服务器进行通讯。
评价测验
运用JavaCAD
服务器端
为了运用户能获取并测验供货商的IP元件,供给者首要应装置一个WEB服务器,包括一些描绘IP元件首要功能的文件及JAR文件的链接,用于下载IP核公共部分及RMI剩余部分的类。一起还需求设置RMI注册服务器及RMI后台程序。元件中受保护的IP部分在该服务器上处于活动状况,当客户端提出仿真、评价、验证等恳求时,此服务器需做出呼应。
客户端
规划者的电路结构是彼此衔接的模块,这些模块能够是本地模块,也能够是长途IP供给商处的元件。仿真验证阶段,经过JavaCAD架构拜访长途IP元件。
一般,规划者首要拜访各个IP供给商的Web服务器,获取不同IP元件的信息,以挑选契合自己规划方针的元件。然后下载JAR格局的公共部分及RMI剩余部分文件,并依据规划要求对这些元件进行实例化。客户端发动仿真设置后,JavaCAD架构在客户端与服务器之间树立网络通讯链接,确保保护IP供给商及用户各自的知识产权。
责任编辑:gt