It's 5:30 a.m. and my alarm is ringing. As I get out of bed, my wristwatch/communicator notifies me that I have incoming messages from members of my global design team. Before getting dressed, I wander into the kitchen, grab a cup of coffee, and sit down at what I like to call "communications central." Actually, it's just my glass-top, touchscreen, Internet-enabled kitchen table.
With the touch of a finger, I activate the display screen, get onto the web, and check my messages. My design team is ready for final integration of all the blocks in a design project we started just two weeks ago. Not wanting to waste any time, I send a wizard out to all team members to see if they're available. Once I've verified that everyone's online, I call up my Internet-enabled, smart electronic-design-automation (EDA) tools and start my integration.
I need to refill my cup of coffee, so I switch to voice-activation mode on my kitchen table. I proceed aloud, "Team 1, microprocessor core, begin integration now. Team 2, analog core, begin integration now..." One by one, each core of the design falls into place, much like the pieces of a puzzle. Because the design is block-based and created in compliance with all current standards, the EDA tools can automatically and intelligently handle the details related to physically interfacing the blocks. As each block is placed, the software transparently works to verify interfaces.
Integration is continuing when Team 4—the memory-compiler core—hits a snag. The process comes to a halt and Internet error-navigation tools are automatically activated. With those tools, we can click on the error and be quickly transported to an EDA support site. We run a search engine, find a solution to our bug, fix it, and are back up in under 30 minutes. Before I know it, final integration is successfully completed. I say goodbye to team members, select my design files, and forward them to my boss. My project has just been completed. It's now 8:00 a.m., just about time for breakfast.
Sound farfetched? Maybe not. With the Information Age well underway, there's little doubt that the industry is facing another revolution in the making. And it all centers around communication. We're about to see an explosion of connectivity in everything from automobiles to kitchens.
As the workhorse and backbone of today's design and development, EDA will play a crucial role in enabling this connectivity. But it won't go unscathed in the process. In its place, the ultimate realization of design will emerge in its purest form: efficient communication between nontraditional members of design teams and tools, as well as between components and cores. The result will be nothing short of next-generation products blending skillfully masked complexity with optimized performance and functionality—much like that Internet-enabled kitchen table. So is it really outlandish to imagine a design environment with totally connected designers and tools?
Join me as I take you on a voyage of discovery into the not-so-distant future. We'll ride through cyber-space to compose a picture of a virtual design environment that might not be so different from my earlier scenario. And we'll find out why you—the designer—may hold all of the cards when it comes to getting design tools and methodologies to meet your diverse needs.
Smash Forehead On Keyboard To Continue
Do you ever get the feeling that trying to complete a design is a lesson in futility, like hitting your head against the wall? Perhaps you've been in a situation where you've been called into a project already in progress. Its poor documentation forces you to try and decipher someone else's register-transfer-level (RTL) code. Or maybe you're working on a board design and the IC guy on the project hands you a design that you know will make your life a living hell. Sound familiar? Chances are that it does for most of you,
Thankfully, your world is about to change more dramatically than perhaps you can imagine. No longer will you be forced to constantly put out fires or run in circles just to take two steps forward in the design process. A new design environment, prompted by the communications revolution, is slowly beginning to crystallize. In its final form, it will be composed of virtual design teams and new Internet-enabled EDA tools working together in harmony.
The result will be a dramatic change in the way you communicate with fellow designers, outside service providers, and vendors, as well as with your design tools. The communication will be transparent and confined to work at hand. Errors will no longer fall through the cracks. The design process won't be weighted down by misunderstandings between design-team members. Your design also will automatically be documented. That's a feature I'm sure every designer can appreciate. In other words, you'll meet those short time-to-market cycles, and the products that you design will be both high performance and robust.
Sounds pretty good, huh? But I bet you're wondering just how these virtual design teams will be formed. Consider for a moment that the electronic-design industry is perhaps the most global market in the world. Together with the recent flurry of mergers and acquisitions, this fact demands an integration of design teams in different, perhaps geographically disperse, locations.
On top of that, the traditional workplace is disappearing in the high-tech sector. Today, many people either work from home or set their own hours. The traditional view of a design team huddled around a schematic or circuit board is being challenged.
Soon, designers and engineers will increasingly find themselves collaborating with colleagues in remote locations. They'll have no other choice. Because of increased chip complexity, project teams will get larger and multidisciplined. Companies will be forced to seek out and work with the best talent, regardless of where it's located. Assuming not everyone will want to relocate, the result will be a design team scattered around the country, and perhaps even the world, along with a project that can literally be worked on 24 hours a day (Fig. 1).
These virtual design teams may include customers, internal resources, and external resources (such as third-party core providers), all working together as a cohesive unit in one seamless project environment (Fig. 2). The internal resources will focus exclusively on areas of core competence and competitive differentiation. The external design resources will primarily offer services or design capability in specific areas of expertise on a project-by-project basis. Outsourcing of tools and manpower will become much more commonplace.
With its flexibility, established infrastructure, and low-cost audio and video communication capability, the Internet offers the ideal place to host these virtual teams. Its ability to connect geographically dispersed people is in direct support of the newly emerging "design anywhere, anytime" mentality. The benefits are obvious: enhanced collaboration and data-sharing capabilities, faster data communications and management, etc.
Of course, with the Internet comes concern about ease of communication, performance, and security. For the most part, these issues can and will be addressed by tool vendors. As new technology becomes available to Internet users, vendors will definitely find a way to leverage these advances for the benefit of designers.
If At First You Do Succeed, Try Not To Look Astonished
Despite these concerns, it doesn't seem like the design community will offer much resistance to the idea of an Internet-based design environment. For the most part, designers and engineers who use EDA tools are technically literate and already have access to the Internet. They also probably have the computer power and high-speed connections necessary to efficiently communicate large volumes of information. Designs created using EDA tools already exist in an electronic format, so no problem exists in digitizing design details for use on the Internet.
Of course, this futuristic scenario of a virtual design environment wouldn't be complete without a new class of tightly coupled, Internet-enabled EDA, project-management, and team productivity tools. Rather than just pass data back and forth, these Internet-specific tools will facilitate and capture communication in a controlled and organized manner. All communication will be indexed and retrievable for future use.
The tools will be based on a methodology that encompasses a block-based design approach and some version of prototyping, whether virtual or reconfigurable. They'll operate from a high-integrity, standard database that can constantly update and synchronize data across all design sites. It doesn't matter if a site is down the hall or on the other side of the world. All electronic data passed must be actionable by all team members and allow constraints to be passed to every design team working on a project. As a result, concurrent design, analysis, and optimization will be possible among different design disciplines.
The need to share and reuse design information, such as software, models, test benches, and expertise, will force EDA vendors to create open, standards-based tool flows and standard languages. No longer will the walls exist between traditionally separate design functions. Designers will find a way to communicate, either by speaking the same language or using a specification and partitioning process that's so rigorous and exact they're no longer required to talk.
This isn't an easy task, considering different design disciplines speak radically different languages. Even when designers use the same words, they often have different meanings. And they usually use different levels of abstraction. As standards-based tools enable teams to work together, how will designers find a way to speak the same language? Will they even need to do so?
In recent months, a number of EDA companies have stepped up to this challenge and announced plans to develop system-level languages for multidiscipline team communication. Options range from some version of C, C++, and Java, to a combination of all three in something known as Superlog. Some have even come together to form the Open SystemC initiative, comprised of a group of over 55 software, hardware, intellectual property (IP), and system companies. This group endorses the standardization of a common class library based on C++, known as SystemC.
Not everyone is convinced that defining a common language for use by every design discipline is the right approach, however. Another option might be for the EDA tools to play the role of interpreter. Better yet, what about the development of autotranslation tools? We already have tools that autotranslate from one language to another, so autotranslation of VHDL to Verilog or C between different sites is conceivable.
Think about it for a moment. You could work in the design language of your choice. Then, when you sent your portion of the design out to fellow team members, it would automatically be translated into their preferred design language. Suppose you speak Italian and have written comments next to your design in your native tongue. Why not have that translated as well, so that every team member can understand your comments?
Some might logically question the accuracy of these translations. To be on the safe side, you can always run an equivalence checker after the translation is complete. If you think that's wild, how about tool environments capable of reading multiple languages at the same time? This is far beyond an autotranslation capability. I'm talking about things like language-neutral simulation and language-neutral synthesis and placement tools.
File Not Found—Should I Fake It? (Y/N)
Continuing on our journey, it's now time to embark on a discussion of communication as it pertains to cores. The Internet offers an interesting platform from which designers will be able to get information about cores. It might include the technical data necessary to sample and use a core, and will most likely be available in a universal language, allowing different hierarchical views for functional verification and suitability.
In general, two levels of communication exist among cores: vertical and horizontal. The vertical direction deals with propagating the target function/performance through the entire design flow, while the horizontal is responsible for maintaining connectivity to other cores.
Most hardships faced by designers working with cores fall into the category of horizontal communication. They stem from interface issues. The search for a solution to this problem has centered on the idea of a platform-based design in which cores could be plugged into a design's standard internal bus architecture. If a standard bus existed, all cores could be designed up front to be compatible with it.
This idea of a high-bandwidth, on-chip bus architecture is appealing because it would enable efficient communication between the cores and other modules within the chip. It also would help to significantly reduce the interface headaches experienced by the different design teams working on a project.
There's only one problem: Which bus do you choose to standardize? Realistically, it's hard to imagine being able to design a standard bus that can handle the various cores' extremely different requirements for communication between devices.
It seems much more likely that designers will ultimately be driven to create custom bus architectures for every chip design. These architectures will meet the requirements of just that design. This approach will be less expensive in die area, and will offer better performance than using a standard platform to integrate cores onto a single chip. In other words, what might be needed is not so much a standard bus, but rather standards to support a fully custom bus.
Regardless of which approach garners the ultimate prize, there's no disputing the need for such a solution to enable reliable core-to-core communication. Just imagine verifying a 10- to 50-million gate design with multiple cores, analog and software content, and no standard interfaces. I'll save you the trouble and spell it out for you. It would take you years to verify and assemble a system of that complexity. Trust me when I say if you have to work that hard, don't even bother. Once standard interfaces are available, you'll be able to integrate, with relative ease, software/hardware cores with other standard components and system elements in a lot less time.
It's quite obvious that standards will play a large role in shaping the design industry in the coming years, and not just in terms of core-to-core communication. They'll make it possible for designers from different disciplines to transparently and accurately view each other's data at a true systems level. EDA and software tool vendors, for example, will need to jointly develop and establish higher-level graphical- and language-based standards that are flexible enough to encapsulate and verify different design types. Such standards will form the basis on which tools can be developed that bridge the gap between traditionally separate design disciplines. The only concern is whether we can count on vendors to bring the needed standards to life in a timely fashion.
It's ironic, but the EDA industry—an industry attacked for failing to listen to the needs of the designers it serves—will play a crucial role in ensuring future communication with designers both on and off chip. Unfortunately, EDA vendors also are known for practicing a type of isolationism. Many companies offer integration with other tools, but it's still too proprietary to be of use to most designers.
Vendors need to break the boundaries among tools and flows as a way to encourage industry expansion and the design industry's use of tools. Endorsing standards will be key to overcoming this problem. Standards also will help address the lack of communication between component-vendor data and EDA tools.
If Things Get Any Worse, I'll Have To Ask You To Stop Helping Me
EDA vendors need to learn to cooperate and communicate if they have any hope of meeting designers' needs in the coming years. Actually, they need to do this just to stay in business. Vendors must make the transition from their old way of doing things to a new way of doing business. They have to let their protective guards down and enable the development of standards, instead of fighting and/or restricting them. While the initial hurdle of opening up may seem insurmountable, the end result will be renewed customer appreciation and loyalty from the design community at large.
Ultimately, vendors may not really have a choice. As the Internet makes tool availability easier, it also will provide a means for designers to really compare tools. With so many tools to choose from, if one vendor doesn't live up to expectations, designers will simply find another one who can.
The balance of power is shifting. Technology today is being driven by consumer products. This puts an interesting set of demands on the designer, as cost is no longer one of the most important factors in determining which tool to buy. They have to get their designs out quickly and be sure they work properly. There's no room for mistakes. Designers need and demand tools that are easy to work with, will provide reliable results, and are backed by a support team capable of stepping in quickly should a problem occur. They'll talk dollars and go to whatever vendor can provide them with the solution they need.
With that said, it's only fair to point out the great impact that EDA vendors have had on the industry. Look around at the communications products available today. How many of you carry a cellular phone, pager, or Palm Pilot? Without EDA tools, these products wouldn't exist.
And the EDA industry will continue influencing the communications revolution. It will define standards and develop Internet-enabled EDA tools. It will allow the communications carried on in cyberspace to be transparent and seamless for designers and engineers. By leveraging the experience gained in enabling products at the cutting edge of technology, the EDA industry will help more mainstream designers bring advanced products to the market.
I Don't Have A Solution, But I Admire The Problem
There it is. That's my vision of the design industry in the coming years, formulated from discussions with the designers and tool vendors who will play a role in shaping a consumer-electronics-driven future for all of us. Granted, it won't get there overnight. As with anything new, a social change needs to take place in order for it to be fully embraced.
But designers and engineers are typically solitary creatures by nature. They tend to be more at ease in the world of numbers, equations, and schematics than they are in most social circles. Therefore, the idea of a new way of communicating might put a little bit of fear into them.
Then again, perhaps this is exactly why the Internet will play such a crucial role in redefining the way designers and engineers communicate. It won't just allow them to communicate on their terms and in a language they find comfortable. It also will filter out all of the extraneous and potentially uncomfortable communication.
In any event, the reality is that making the transition to a new design environment will be a slow and arduous process. Along the way, the EDA industry will be forced to take a long, hard look at itself, find better methods of leveraging the capabilities enabled by the Internet, and perhaps come up with clever ways of redefining its role.
How, for example, will the industry distribute and price its new Internet-savvy EDA tools? Will traditional business models change and make way for, say, pay-per-use, time-based, transaction-based, or subscription-based models? One thing is certain: Vendors that resist openness and standards are sure to be swept away by the current of companies that will evolve to meet the needs of Internet-based virtual design teams.
Now, our journey into the future is coming to an end. I feel it's my solemn duty to let you know that I could be wrong. After all, if I've learned one thing working in the high-tech sector, it's that nothing is a sure thing when it comes to the electronics industry. All of the rules are meant to be broken.
But I harbor no doubts about the role that the communications revolution will play in singlehandedly redefining the world in which we live. It will change the way we relate and interact with our environment, and it will alter our quality of life. These are undeniable facts.
So, if I got some of the details wrong along the way, I'll just chalk it up to a momentary brain lapse or perhaps even a faulty memory circuit. What can I say? The human brain is just so unreliable these days.
In the meantime, I hope you have enjoyed your glimpse into the future and... Oh, excuse me. My wrist-watch/communicator just notified me that I have an incoming video phone call from my mother-in-law. Now, can't some smart designer out there find a way to do something about that?