Hugo: |
Nora, we first need to clarify some issues before we talk about tools. An IC design manager or the EDA manager has to deal with four main questions. (I act in both roles here, by the way, as a design manager and as an EDA manager.) Those questions are:
I listed them in this order because each depends somewhat on the previous answers. The tools used are affected by the answers to these questions. Let's take them one by one. |
Organization
-
First, look at the organization. Will one or two people or a group do the design work? Will they all be at the same location or in different remote places? For example, we have a design group in Ireland.
Running design jobs remotely is common on private networks or on the public Internet. This has been an area of tool development for many years. (Some EDA companies provide network support utilities.) Distributed design allows you to partition or share the work between design groups separated by time or geography.
Will you do the design work at different sites on the same “campus” (metro)? Perhaps you will do it in different time zones or at different geographic sites (same or different countries)?
Hugo: |
(chuckling) I remember trying to set up a video-conference time common to Japan, the US, and the UK. Someone was always inconvenienced. However, the massive size of many EDA files is a deterrent to the rapid transfer between remote sites. Since EDA files contain proprietary chip designs, protecting them is a major concern, particularly over the Internet. For example, we have multi-gigabyte files that can take hours to send or even longer, if there is a network failure and we have to resend them. File sharing also requires identical or compatible EDA tools at the local and the remote site. So you also need consistent design, change control, and backup procedures. However, the biggest challenge is the cultural and personnel issues, even within the same company. For example, I once had a design group in Japan working with one in the US. Just following the same checking procedures and agreeing on deadlines was a real problem. Will the various users doing separate parts of the design be using different software or computer systems? (They may have to be the same, and the same revision.) If you can answer these questions, then you can determine the sort of computer network you need. |
Coordinating design groups working around a country or around the world is often very difficult. Just scheduling a time for a video conference or a conference call is complicated. For instance:
At 9 A.M. in San Jose, people are just starting work.
It is 5 P.M. in London; people are ready to leave work.
It is 2 A.M. the next day in Tokyo!
Computer Network
-
Second, look at the structure of the computer network. What does the organization already have, and what does the engineering staff need? Most design engineers like to run or control the tools from a workstation at their desk. (This is important for interactive work. For simulation runs, the tool will run faster on a shared server computer or a group of shared computers (server farm) with massive amounts of memory.)
If there is a design group, you may want to share a local engineering server. Is a company-wide shared server on-site? Are you required to interface with it? Do you need a local area network? Is there one in place, and is it fast enough?
Is there a geographically remote server, involving high- (or not so high-) speed communications lines? Is a connection to the Internet required for remote communications? (Some countries do not allow their residents open access to the Internet...)
If you can define the computer network you have or need, then you can address the security questions. Let me draw you a quick sketch of computer networks. (See Figure 3.1.)
Figure 3.1. Computer Networks
Note that a local area network (LAN) links all the workstations in one building. A metro area network (MAN) can link several nearby buildings (as on a campus). The LAN or MAN can connect to a wide area network (WAN) to reach worldwide. The Internet is a public WAN. Some companies have private WANs.
Security Requirements
-
Third, what security requirements are required and are available? The crown jewels of the company will be on your computers. Your engineers need to work with unencrypted files. Industrial theft of intellectual property (IP) is quite common, unfortunately. It is not even a crime in some countries. (We mentioned the Cadence/Avant! lawsuit previously. IP includes design ideas about chips, tools, or anything.) Company attitudes towards security vary from clueless to paranoid. Some security examples in use are:
Firewalls— these restrict who and what programs have access to and from the network.
Dial-in crypto tokens— these have a user password and electronic token code that changes every few minutes. The codes must match the codes at the host computer.
Frequent equipment location checks— location and content checkups of desk machines. Check-in and check-out of laptops.
Laptops require extra security. Travelers can easily lose them or have them stolen. The very portability that makes them so handy also means that they can vanish in a second.
Password control— this should be used on project files. The files should also be encrypted when they are not in actual design use. This is a real problem if a tool vendor needs your proprietary design files to resolve a tool bug. There needs to be non-disclosure terms in the tool contract (they promise not to reveal any sensitive user/customer information). The vendor also needs to have close control of who can access your design files at his shop. The vendor must ensure that the design files are not put on a networked machine with open access to non-authorized people.
The security environment decisions may affect the computer environment choices, which is the next issue.
Whatever procedures, encryption, firewalls, etc., are used to deter external access, the largest source (80%) of IP theft is your internal people!
Computer Systems
-
Fourth, what computer environment will be needed? All the previous questions affect this decision. On what computers do the current or expected EDA tools need to run (PCs, workstations, servers, or a group of servers)? Most large companies use farms of dedicated multiprocessor servers with huge amounts of memory and disk storage.
On which operating system will the EDA tools run? Options include UNIX (most common), Linux (increasing), Microsoft NT (a few), or Windows (very few). There are different supported versions of each of these. The version differences may be minor, but may require compatible versions of EDA tools which share data.
A few small EDA tools can run on Personal Computers (PCs). However, EDA users usually need high-resolution graphics, large screens, and fast processors. Most EDA tools require as much computer memory and disk space as you can get. They need long dedicated (uninterrupted) run times. As you know, there is great benefit from getting a product to market early. So, the designers should have access to the fastest possible computers.
Some vendors offer accelerators (both hardware and software) that make the tools run faster.
Changing the computer environment is always a risky experience, with unforeseen delays. So, the managers need a flexible migration plan (and fallback plan!) to include upgrades, company growth (or reduction), and remote sites.
Nora: |
There certainly are many concerns to take into account. I was thinking it was just a computer decision. In marketing, I just use a laptop. What do your designers use? |
Engineering / Non-engineering Goals
Hugo: |
You've touched a sensitive area. There is often a conflict between the company Information Technology (IT) and the engineering departments. The IT department seeks shared use of company central computers to lower costs, while the engineering department usually needs its own dedicated machines. Conflicts arise over computer purchases (e.g., central vs. department servers, workstations vs. personal computers). Operating systems (NT vs. UNIX vs. Linux, etc.), and company-wide standards are also issues. The biggest argument may be over ownership / administration (i.e., company IT vs. local engineering). Minimizing costs and support staff is the IT department's (in-house or contract) normal goal. Standardizing maintenance and centralizing all business applications are two ways to achieve this. High utilization of their computers (90% or more) is another. IT business applications typically use small files (a few megabytes) and have short (seconds or minutes) transaction-oriented run times. User response time is not a major issue. User downtime and lockouts for maintenance are normal side effects. So are disk storage limitations. However, these are only annoyances for most of the organization. In contrast, EDA tools operate with gigabyte files and long run times (hours and days!). Engineers make a small design change and re-run a whole suite of programs. Thus, long run times are the norm, not the exception. The engineering users need all the computing power and disk speed they can get. Moreover, a hangup or disruption is very costly to their project. Most large workstations require administration and support (setting up and managing file storage, backup, network connections, etc.). These are usually network administration jobs, not IC designer tasks. So EDA users need IT support staff. They also need EDA support staff to manage the expensive tool licenses, upgrades, and usage. EDA users need to reduce computer loading (utilization) to gain speed for their compute-hungry EDA tools. To meet design deadlines, engineering management must control computer priority and access to the tools and files. Companies often address these conflicts with separate local computers, administration, and support for engineering. The rest of the company uses a shared IT server and administration. In companies with multiple projects or engineering departments, the same issues occur among the engineering groups. The engineering managers must share the high-powered engineering server farm. (I have seen these issues in several large companies.) |
Nora: |
That solution must be difficult to sell. |
Hugo: |
Yes, but it is essential if the organization wants to get the revenue benefit from the EDA tools. |
Nora: |
How do you go about buying EDA tools? |
EDA workstations should always be fully equipped. The cost of adding memory, disk space, and high-speed network links is usually negligible compared to the costs of engineering time and TTM.