Rss

My book released : “Nuts and Bolts of Open Hardware”

Support independent publishing: Buy this book on Lulu.

EDA and Semiconductor industry is gearing up for FOSS, when opencore (Open Source IP Cores), OpenSparc (Processor core from erstwhile SUN Microsystems) and Open Source Hardware(!) are making a buzz. This book addresses that how an Open hardware makes a sense in Semiconductor world and how the business in the EDA and Semiconductor world be 5 years down the line.

Open source EDA tools-compilers/simulators, methodologies, protocols, ip cores and various other initiatives will be discussed in the book.

The book is not only an awareness session for EDA and Semiconductor and an effort to motivate engineers and common people to move from proprietary resources to  use open source tools in EDA, but also to inspire them to contribute for such usage and movement.

Efforts have been made to explain in detail the inception of thought of openness in software and content has been taken from open initiative of Wikipedia at various areas and levels.

Though there are many books available on the FOSS initiatives but I realized there is less of compiled and integrated material on Open Hardware and information relevant to hardware side of embedded systems and enthusiast for semiconductor, electronics and silicon.

In a sense, hardware is becoming much more like software, up to the point where you actually fabricate an object,” von Hippel says. “That’s why you’re starting to see open source techniques in hardware. Design is largely going to shift out from manufacturers to the communities.

Further this book is an effort to make this literature capable to be accepted as text book for engineering students for their quest to understand open side of software as well as hardware, and increase their comfort zone as well as awareness and enthuse them to adopt and accept open hardware with open hearts.

My book on “Python :A Kid’s and Hardware Engineer’ Perspective”

U S and Europe edition:
Support independent publishing: Buy this book on Lulu.

This book explains my experiences in learning Python and implementing the same .And this topic-“Python: A Kids and Hardware Engineer’s Perspective “- because not many books are targeted for this audience for the language in which I think is the easiest path to make your dreams into reality. Python must be the ideal choice for removing the hesitation to get into coding and make your hands dirty-this is the feeling which haunts both hardware engineers and kids equally for a programming language.

 

Please click at below image for buying within India:

Millionaire’s Problem and me :-)

Python is a beautiful world.It indeed takes you near the nature -where we can see and make things implemented in the language – nearest to what nature speaks in.

I dont know -but i believe that if God is a coder/programmer than he would have coded the world in Python language and spoken Sanskrit:-)

Well, i try to write and edit about something -that demonstrates the usefulness and ease of Python in day to day life.

Was just going through Bryan Mills article on “The Millionaires Problem” and was thinking can I have some better solution for this. And indeed I had one..Please go through the complete traditional solution provided by Yao on his research paper and let me know your way of doing this.

Will see if yours is better than mine or not?

Lets assume there are two millionaires, named Alice and Bob. Alice and Bob what to know who is richer without revealing how much money either one of them have. This is what is known as the millionaires problem, originally introduced by Andrew Yao.

Why am I talking about this? Well I’m interested in the ability to share information among people while preserving their data privacy. In this case the two millionaires will know which is richer (information) without sharing how much either is worth (their private data).

The solution we will be exploring relies upon two assumptions. First, it is assumed that the two millionaires knows approximately how rich each are. In our example we’ll assume that Alice and Bob knows that they are both worth somewhere between 1 and 10 million dollars. The second assumption is that Alice and Bob are using a public key encryption system, in this example we’ll be using RSA. With those assumptions lets begin working through an example.

We’ll give Alice 8 million dollars (i=8) and Bob 6 million dollars (j=6). Then lets assume that Alice’s public key is (17, 1591) and her private key is (89, 1591). These keys are really small to make the math easy, also note that the maximum number that can be encoded with this pair is limited (actually the maximum is 1590).

STEP 1: Lets have Bob start the process. To do this Bob first generates a N bit random number called U, we’ll choose 1180. Bob then takes that number and computes C = 1180^17 mod 1591 = 749. Note this is actually the encrypted version of Bob’s random number using Alice’s public key.

STEP 2: Bob takes the C value he computed and adds his wealth value J and subtracts one, C – J + 1 = 749 – 6 + 1 = 744. Bob then sends Alice this value.

STEP 3: After receiving this value Alice creates values Y1, Y2, …, Y10. Where Y1 is the RSA deciphering of (C – J + 1), Y2 is the deciphering of (C – J + 2), Y3 is the deciphering of (C – J + 3), etc. Although Alice doesn’t know C or J, Alice can still compute this because Bob sent her (C – J +1). This produces the following table of Y values.

x (C – J + x) RSA Function Yx
1 744 744^89 mod 1591 805
2 745 745^89 mod 1591 281
3 746 746^89 mod 1591 339
4 747 1311
5 748 1244
6 749 1180
7 750 1062
8 751 1359
9 752 219
10 753 753^89 mod 1591 942

STEP 4: Alice generates a random N/2 prime number called p, remember Bob’s random number was N bits. We’ll use 631, its prime and its close enough to N/2 bits. Using this number Alice generates Z1, Z2, Z3, … Z10. Where Z1 = Y1 mod p, Z2 = Y2 mod p, etc. This operation generates the following table of Z values.

x (C – J + x) RSA Function Yx Zx (= Yx mod 631)
1 744 744^89 mod 1591 805 174
2 745 745^89 mod 1591 281 281
3 746 746^89 mod 1591 339 339
4 747 1311 49
5 748 1244 613
6 749 1180 549
7 750 1062 431
8 751 1359 97
9 752 219 219
10 753 753^89 mod 1591 942 311

Detail Note: The random prime needs to be chosen such that the consecutive Z values differ by at least 2, the one we chose does and its easy to verify in the general case.

STEP 5: The rest of this is just the setup, heres the punchline. Alice then sends Bob the random prime she selected and the calculated Z values: Z1, Z2, Z3, … up to the i value (the number of millions Alice has i = 8). The remaining 10 values Alice sends but adds one to each value; Z9 + 1 and Z10 + 1. To recap Alice sends the first i Z values as they were calculated, she then sends the remaining Z values plus 1. Here are the numbers alice sends:

p Z1 Z2 Z3 Z4 Z5 Z6 Z6 Z8 Z9+1 Z10+1
631 174 281 339 49 613 549 431 97 219+1=220 311+1=312

STEP 6: Bob then computes G = U mod p = 1180 mod 631 = 549. Recall U is the random number that Bob selected in step 1. The value p is known because Alice told Bob the random prime she selected (p). Bob then looks at the jth value (his wealth in millions) of the 10 Z values sent to him by Alice (ignoring the random prime Alice sent first). If this jth value is equal to G then Bob knows that Alice is of greater than or equal wealth to himself. In our case G does equal the jth value (549 = 549), this means that Alice is either of greater or equal wealth. On the other hand if G is not equal to jth value it means that Bob is richer than Alice.

STEP 7: Bob then tells Alice that she is richer. Both parties now know which person is richer and was able to determine this without exposing their actual wealth. Note that Bob actually determines if Alice is greater than or equal wealth, to determine if its equal or greater than you would have to run the algorithm in reverse (swap the roles for Alice and Bob).

At the end they both know more, for example Alice knows that Bob is worth between 1 and 8 million and Bob knows that Alice is between 6 and 10 million. This is a result of just knowing who is richer than the other and the original range of values they already knew. Besides this no other information can be determined by the involved parties.

Still not convinced? Here is some python code that demonstrates how this algorithm works, it implements RSA public key encryption and then walks through one example (similar to this article). You can easily change the wealth of Alice and Bob and see how it works. How to play with this:

  1. Download million.py
  2. Execute this file using python. python million.py
  3. At the bottom of the file is the “main” body of the program. You can edit various values in this section and generally play with everything there. Specifically BOB_VALUE, ALICE_VALUE, and MAX_VALUE.

There are several implementation problems with this when in a real world problem. First, what if people lie? Bob and or Alice could simply not tell the truth about their values. By lying Alice and Bob could run the algorithm multiple times to and eventually determine exactly how rich the other party is. Yao actually addresses this issue in his original paper and proposes a few solutions. Second, computation cost is extremely high, since you are computing public key encryption values for several values the computation time could be very high. Third, the range of values, in most practical problems the range of values is greater than 10 which means lots of computation but also lots of Z values need to be sent between Alice and Bob. Fourth, if you implement this for multiple parties there can be collusion among the parties which could reveal private data about an individual in the group.

Its interesting to think that this was written in 1982 just a few years after public key encryption was discovered. Was it a problem looking for a solution or a solution looking for a problem? Which ever direction the solution came from the millionaires problem proves that you can share information yet protect ones private data. While this solution might have some issues at least there is a solution! Since this paper was published there has been several more sophisticated solutions but this one is elegant and is fairly obvious after working through a few examples.

Linux Lagan Laagi Hai

I am a great fan and follower of the revolution called as
opensource.Linux,Perl ,Python,Music,Vedas and Love- all those objects which don’t follow any boundries ,I am for them..

Heared so much about Prof.Stallman and Linus Torvalds ,and  it was Dr.Anil Seth in Goa ,who triggered my thoughts in the direction of promoting the Linux and opensource software.In Goa ,I first understood about the Linux user group and various communities involved..Infact I have used and seen GUI’s of almost all the Linux’s in use-Mandrake,Knoppix,Red hat ,SuSe and Fedora-17but have not got my hands dirty with the installation .

I bought a new hard disk of Samsung too,today only.Hopefully it full fill my ambitions of getting the job comfortably.
Someday ,hopefully will be able to initiate people in using the Linux in all the Internet surfing cafes in town.:-}

Amen

System Verilog based Universal Testbench for IPs/ASICs/SOCs

Introduction

This post discusses Random constraint-based verification and explains how random verification can complement the directed verification for the generic designs. In our case this is demonstrated by an “ARM processor based platform”.

The Constrained Random Techniques (CRT) can be effectively used for verifying large complex designs. As CRT can automatically generate a large number of test cases, it can hit corner cases faster and help in reaching conditions that would normally not be easily reached with traditional methods. These features are built over and above an already existing legacy Verilog environment.

Random verification for generic designs is implemented by Transaction based Models or Bus Functional Models. The language used for the Verification environment is SystemVerilog.

Reuse” is a term that is frequently associated with verification productivity. When faced with writing a verification environment from scratch, or modifying an existing one, the choice will often be to stick with what’s familiar and already in existence.

Methodology” lays a foundation for a robust verification environment which is capable of handling complex verification needs and speed up the verification process.

When a verification environment is needed for a new design, or for a design revision with significant changes, it is important to objectively look at the shortcomings of the existing verification environment and expected productivity gain with the new methodology and determine the best solution.

In our case we need to find an optimum balance between re-usability of our legacy Verilog environment and the resource utilization along with limited timelines in adopting the new methodology.  This can be accomplished by reusing the knowledge /legacy code from an earlier project along with an upgrade to a new methodology provided with the verification language, that is SystemVerilog.

There are already few verification methodologies available from Synopsys like VMM/RVM which helps in building a robust verification flow.  But keeping in our limited resources and stringent timelines, we focused on implementing a simpler flow based on Constraint Random Techniques (CRT), which helps in generating the interested test scenarios automatically. This is an in-built feature available with SystemVerilog.

This document demonstrates the introduction of Constraint Random Verification with SystemVerilog while re-using the legacy Verilog verification environment (keeping what we knew best).

Design Under Test

The Figure-1 below shows the top level view of our design under test. This was an ARM 1136 processor based platform, consists of different peripherals which are closely connected to the ARM processor through AHB interface and provides a control and communication link with the other sub-units on the SOC. The Testbench for the same was in Verilog. The block level directed testing was done and assertions were present for the bus interface monitoring and specification violations.

Figure-1:  Block Diagram of DUT

Directed Verification

Figure-2 below shows the legacy Verilog based verification environment which was earlier used to verify the functionality of the platform.

Figure-2:  Legacy BFM based Verification Environment

The legacy verification suite of scenarios consisted of a group of ARM based assembly patterns and Verilog based BFM scenarios.

The assembly patterns were targeted for the integration check between 2 or more sub modules and were also based on the application specific scenarios within and for the platform.

The BFM based Verilog patterns were verifying the integration and other checks which were not possible through assembly patterns. The BFM in Verilog was replacing the ARM processor and was generating the manually requested transactions.

This traditional approach of verifying the designs by writing the Verilog/VHDL testbench leads the designers to completely rely on developing a directed environment and hand-written directed test cases. These directed tests provide explicit stimulus to the design inputs, run the design in simulation, and check the behavior of the design against expected results. This approach may provide adequate results for small, simple designs but it is still a manual and somewhat error-prone method. In addition, directed tests were not able to catch obscure defects due to features that nobody thought of. Moreover these traditional methods have very limited and cumbersome random capability

With increase in complexity and size of design, there is higher and higher demand on exhaustive functional verification. These demands are necessitating the development of new verification technologies, such as, constrained random verification, score-boarding and functional coverage, to achieve exhaustive functional verification goal.

These development methods for reusable verification environment are much easier and helpful in constraining verification to find out the corner cases and hidden bugs which are left undetected with conventional directed approach.

Constrained Random based verification

Now before starting the implementation of a Constraint Random Verification environment, there were few points of consideration.

Language

System Verilog was the first choice to be used since it is an IEEE standard as well as easy to learn, for those who are already familiar with Verilog. It provides some additional constructs for the randomization implementation and Object Oriented techniques for improving the Verification environment.

Tool

The quest began for the tool (simulator), that is compatible and can support maximum number of constructs and features of System Verilog. We had a few options and found that synopsys-vcs-/vY-2006.06 was much ahead of its counterpart cadence-ius-5.7.

Approach

1. VMM (ARM & Synopsys -Verification Methodology Manual Based)

VMM is believed to be the most efficient method, for doing the testbench design from scratch. It provides plenty of inbuilt classes and methods (vmm classes) that can be used to implement a verification environment. These groups of classes are called VMM standard libraries and checker libraries. But we decided to go with the 2nd approach.

2. Reusing the test bench

As we already had the Verilog testbench in place for our Directed Test cases, we implement the “constraint driven coverage based randomization” in System Verilog by reusing the Verilog based Transactor Tasks (Bus Functional Models) and utilizing System Verilog constructs as discussed below.

Figure-3: Enahnced and modified Verification environment

The above Figure-3 shows the layers added in the existing verification environment to implement the Constraint Random Verification environment.

The flow for preparing the test plan remains the same as before for the directed testing except that, now the focus is on implementing the random transactions and data streams which are valid for the DUT. The commands are random to the extent that they cover the corner case scenarios that can not be thought of during the directed verification. Cross-coverage of these transaction types is then performed, in order to ensure that all the combinations for op-codes and error conditions are exercised.

Building blocks

5.1 Transaction based Stream (Packet) Generator

The Transactor generates high-level transactions like read/write with certain burst/size on some PORT. The term transactor is used to identify components of the verification environment that interface between two levels of abstractions for any transaction.

task XFR; // Transactor task for unit AHB packet generation

input    [3:0]  hrqst;    // assert hrqst or not
input           hwrite;   //
input    [2:0]  hresp;    // expected hresp behavior
input    [1:0]  htrans;   //
input           hlock;    //
input    [2:0]  hburst;   //
input    [2:0]  hsize;    //
input           hunalign; // hunalign
input    [7:0]  hbstrb;   // hbstrb
input   [31:0]  haddr;    // haddr
input [DMSB:0]  hdata;    // see below
input [DMSB:0]  hmask;  // AND w/ actual/expected data before comparing
input    [5:0]  hprot;        //
input    [5:0]  hsideband;    // hsideband
input    [3:0]  hmaster;      // alternate master number
input    [3:0]  slot;         //
input [80*8:1]  comment;      // 

endtask;

//XFR(hrqst,hwrite,{xhresp2,1'b0,xhresp0},htrans,hlock,hburst,hsize,hunalign,hbstrb,haddr,hdata,hmask,hprot,6'h0,hmaster,slot,comment);

Figure-4:  Code Snippet for the Packet Generator

5.2 Filter/ Constraint Block

Purely random test generations are not very useful because of the following two reasons-

1. Generated scenarios may violate the assumptions, under which the design was constructed.

2. Many of the scenarios may not be interesting, thus wasting valuable simulation time, hence -Random stimulus with the constraints.

Figure-5: Random v/s Directed Approach

Hence the random generators should be constrained to generate the required stimulus sequences. Constraining the generators may involve defining sequences of data, but it also may involve coordinating multiple independent data streams onto a single physical channel/port or parallel channels/ports, each stream itself being made up of data sequence patterns.

The ability to constrain the generated data to create detailed stimulus scenarios tends to require more complex randomization process. It becomes more efficient to take few complex stimulus sequences as directed stimulus, and leave the bulk of the data generation to a simple randomization process.

This Filter/Constraint block generates the valid AHB transactions and allowed instructions for the platform.  Below is the snippet of the code implementation of the constraint block.

 

class MainClass;

                       rand bit [31:0] Address;
                       rand bit [7:0] Strobe;
                       rand bit [63:0] Data;
endclass

class Constraints_L2CC extends MainClass;

               constraint C_M00 {(Address [3:0])%4==0 ;}
               constraint C_M01 {Address [27:4] ==24'h000000 ;}
               constraint C_M05 {Address [31:28]==4'h8 ;}
               constraint C_M03 {Address[2]==1 -> strobe==8'hf0;}
               constraint C_M04 {Address[2]==0 -> Strobe==8'h0f;}

endclass
Constraints_L2CC L2CC = new();

class Constraints_L2CC_1 extends MainClass;

               constraint C_M00 {(Address[3:0])%4==0 ;}
               constraint C_M01 {Address [25:4]==24'h000000 ;}
               constraint C_M02 {Address[27:26]==4'h1 ;}
               constraint C_M05 {Address[31:28]==4'h8 ;}
               constraint C_M03 {Address[2]==1 -> Strobe==8'hf0;}
               constraint C_M04 {Address[2]==0 -> Strobe==8'h0f;}

endclass
Constraints_L2CC_1 L2CC_1 = new();

class Constraints_L2CC_2 extends MainClass;

               constraint C_M00 {(Address[3:0])%4==0 ;}
               constraint C_M01 {Address [25:4]==24'h000000 ;}
               constraint C_M02 {Address[27:26]==4'h2 ;}
               constraint C_M05 {Address[31:28]==4'h8 ;}
               constraint C_M03 {Address[2]==1 -> Strobe==8'hf0;}
               constraint C_M04 {Address[2]==0 -> Strobe==8'h0f;}

endclass
Constraints_L2CC_2 L2CC_2 = new();

Figure-6:  Code Snippet for the Constraint Block

5.3 Command Driver Block

This block generates transactions, either individually or in streams. Individual meaning unit AHB packet and stream meaning multiple AHB packets for different transactor interfaces. Note that each of these commands may be derived several times or in several flavors till the Functional Coverage reaches 100.

task Command2_L2CC_2_AIPS();
begin
$display("******COMMAND 2 SELECTED*******");
->event2;
cmd2=cmd2+1;
`XMw.XFR( `XFER, `WR, `OK, `NSEQ, `NLCK, `SNGL, `WORD, `AL, L2CC_2.Strobe, L2CC_2.Address, L2CC_2.Data, 64'hFFFFFFFFFFFFFFFF, `nnnnPD, 6'h00, `MST1, `SLT0, "Setup: 0" );

`XMp.XFR( `XFER, `WR, `OK, `NSEQ, `NLCK, `SNGL, `WORD, `AL, AIPS.Strobe, AIPS.Address, AIPS.Data, 64'hFFFFFFFFFFFFFFFF, `nnnnPD, 6'h00, `MST1, `SLT0, "Setup: 0" );
 
endtask
 

Figure-7:  Code Snippet for the Command Driver Block

The Command (Cn) is a combination of 1 or more number of unit AHB packets (Pn). Each packet (Pn) is targeted for different transactor interface.

 
 
  
 

Figure 8: Command Flow

 

5.4 Sequencer

Sequencer throws the command or a set of commands, to the DUT, depending on the weight or the probability of the scenario (command) at that point of time. Feedback of the Functional Coverage is used to determine the probability of the nth scenario and thus the output of the sequencer.

randcase
               100-L1: Command1_L2CC_1_AIPS();
               100-L2: Command2_L2CC_2_AIPS();
               100-AI: Command3_AIPS();
endcase

L1=cvr.cross_cover.LL1.get_inst_coverage();

L2=cvr1.cross_cover.LL2.get_inst_coverage();

AI=cvr2.cross_cover.A01.get_inst_coverage();

Figure-9:  Code Snippet for the Sequencer Block

The below diagram shows, how a Sequencer generates the command considering its current weight which is initialized to ‘0’ at the beginning.

Where—

F.C.nth -Functional Coverage of the nth behavior (set).

Weight- Probability of selecting nth behavior (set).

Scenario- Set of valid random instructions (BFM)

Sequencer- Engine that triggers behaviors (set) based on its current weight.


Figure-10: Sequencer Methodology Overview

5.5 Functional Coverage Block.

To ensure that we hit every possible cross-coverage point it is required that we achieve a high functional coverage of the DUT. Also, any areas that were initially missed during random testing are easily highlighted by the functional coverage results.

The functional verification requirements are translated into a functional coverage model to automatically track the progress of the verification project. A functional coverage model is implemented using a combination of covergroup. The choice depends on the nature of the available data sampling interface and the complexity of the coverage points.

Functional coverage is the primary director of the Verification strategy. It determines how well the test bench is fulfilling your verification objectives and measures the thoroughness of the verification process. A functional coverage model is composed of several functional coverage groups. The bulk of the functional coverage model for a particular design under verification will be implemented as a functional aspect of the verification environment.

The output of the Functional Coverage block is given as a feedback to the Sequencer which in turn decides the selection of the nth scenario.

The following points are kept in consideration for developing the coverage groups:-

  • Coverage groups for the stimulus generated by the Generator.
  • • Coverage groups for the stimulus driven onto DUT.
  • • Coverage groups for the response received from the DUT.

class coverage_for_L2CC_2;

covergroup cross_cover @(posedge testbench.arm_clk);

option.per_instance =1;

type_option.goal = 100;

L_20:coverpoint L2CC_2.Address

{

bins Addr_cover_value[] = {32′h88000000,32′h88000004,32′h88000008,32′h8800000C};

//      illegal_bins    bad     = {32′h88000000};

}

L_21:coverpoint L2CC_2.Strobe

{

bins Strobe_cover_value[] = {8′h0f,8′hf0};

}

LL2:cross L_20,L_21;

endgroup

function new();

cross_cover= new;

endfunction : new

endclass

Figure-12:  Code Snippet for a Covergroup

5.6 Response and Protocol Checker (Assert Properties)

Assertions constantly check the DUT for correctness. These look at external and internal signals. The testbench uses the results of these assertions to see if the DUT has responded correctly.

In directed tests, the response can be hardcoded in parallel with the stimulus. Thus, it can be implemented in a more distributed fashion, in the same program that implements the stimulus. However, it is better to treat the response checking as an independent function.

By separating the checking from the stimulus, all symptoms of failures can be verified at all the times.

Conclusion

Keeping in view of the limited human resource and the stringent project deadlines, developing a object oriented verification environment in SystemVerilog over the existing Verilog environment felt advisable. Inclusion of the Constraint Random Verification significantly reduces the effort and time required to verify the complex behaviors.

The experience using SystemVerilog so far has provided us with an environment that is:

  • • Maintainable – The Common look and feel between related class types make it easy for team members to float from one functional area to another. The code is very modular with well defined ways to communicate between transactors.
  • • Controllable –The modular approach allow us to be more precise in determining expected values, thus minimizing false fails.
  • • Reusable – Core-level checkers, classes, tasks can be reused for system-level verification. In addition, the SystemVerilog skills developed on this project can be used in any future verification project that uses a high level verification language (HVL).
  • • The documentation and examples with VCS installation for getting started with SVTB, were very easy to comprehend.

Recommendation

Adopted methodology provided a robust verification architecture that produces more modular code with a higher degree of reusability. Code produced for one portion of the project can be used in other environments.

Need Project Trainee

For our requirements we need at least 15-20project trainee engineers with Bachelor’s  Degree in Computer Science or Electronics.As the ongoing projects are research based hence Masters shall be desirable but not mandatory.

Below is the list of projects that are either  completed and need enhancements or need to be started from the scratch.

Assignment will be for minimum period of 3 months.

http://solvexgroup.wordpress.com/ongoing-vlsi-projects/

Criteria:

Understanding of Linux,Unix, Perl/Shell scripts,Data Structures(desirable),CPU architecture(desirable),VHDL/Verilog(mandatory),Algorithm implementation in HDL,FPGA architeture, C based programming(mandatory).

On Layout Tools and others

Hope I will be able to know the answers of these questions after 6 months (in case they have not  dealt  with in the current scope of lectures and subject coverage till now ).

And in case if I have missed something then can someone please answer and discuss them??

  1. How is Layout different from Placement and Route?
  2. What is the difference between Synopsys Astro and Cadence Virtuoso-do they offer layout or are just placement and routing tools?)Comparing them with Magic and LASI) !
  3. What is the intermediate map/snapshot/diagram- which we can use and create a complete chip out of ? For example after seeing the Chip and reverse engineering the same- what is that something which I can use to create my own chip in the foundry? Reference- Chinese Mobile chips. They do the same-as they bypass the flow for design entry/verification/simulation/floor planning etc and release the chip within a few hrs of seeing the original chip(say famous case of duplicating iPhone/Nokia in the Chinese markets)
  4. Are Stick Diagrams passed to the Foundry or else what is the base unit that is given to Foundry as an input to be manufactured as a chip.
  5. Giving below a collection all possibly available Layout Tools(Categorized as Cheap, Expensive and Open Source)
Open source software Description Web site
wol http://www.cs.berkeley.edu/~lazzaro/chipmunk/describe/wol.html
toped Micron based layout editor with extensive scripting capabilities. Under active development and part of Fedora Electronic Lab. http://www.toped.org.uk
microwind3 Lambda based layout editor especially adapted for interactive design with Spice.
This used to be completely free, but now only a Lite version is.
http://www.microwind.org
magic Lambda based layout editor with good options for writing CIF and/or GDS files. Supports scripting. Large user base. Part of
Fedora Electronic Lab. Used for extraction and CIF/GDS creation by the pharosc libraries
http://opencircuitdesign.com/magic
lasi LASI stands for LAyout Software for Individuals. It is designed to run on Windows, though it also runs on Linux under Crossover Office.
Actively used software with frequent updates.
http://lasihomesite.com
kic Part of open source packages released by Whiteley Research. http://wrcad.com/freestuff.html
graal Lambda based layout editor allowing conversion to CIF and GDS with appropriate technology files. Dreal is the companion software to view CIF and GDS. Part of a tool set from Alliance which is probably the best open-source software for IC design. Comes with own standard cell library. Part of
Fedora Electronic Lab. The pharosc standard cells are drawn with graal.
http://www-asim.lip6.fr/recherche/alliance
electric Comprehensive set of software programs designed around the concept of silicon compilation. Version 6 crashed a lot, and stored all design data in a single file which exposed one to the risk of file corruption and loss of all data (I speak from experience).
New version written in Java. Extensive documentation.
http://www.staticfreesoft.com/productsSoftware.html
dreal Simple layout editor which uses CIF or GDS as its native format. Companion software is Graal. http://www-asim.lip6.fr/recherche/alliance
Cheap software
xic Whiteley Research Inc. Layout editor with linked Spice simulator. List price is $1195. http://www.wrcad.com/xic.html
slam-edit Stabie-Soft Inc. Unix/Linux based layout editor. It seems a licence cannot be purchsed, only leased for one year periods (bad if the company folds). List price on web site is $2,000 per year. http://www.stabie-soft.com/sledit.html
ledit Tanner Research Inc. Windows only layout editor popular with mixed signal designers. Ledit sed to cost $1,000, but this price could not be verified (which is surprising since low price is a key selling point of the software). http://www.tanner.com/EDA/product/Tools_PhysicalLayout.html
layedpro Mycad Inc. Windows only layout editor designed in Korea but supported for English language users from California. No new product since 2005 on US site, but Korean site seems active. No price could be confirmed. http://www.mycad.com/02pro/01.html
http://www.mycad.co.kr
layed Catena Software GmbH. Demo versions for Linux and Windows can be downloaded. List price of the basic editor might be €1,585 (could not be recently verified). http://www.catena-ffo.de/laytools.htm
iced IC Editors Inc. Windows only editor that used to cost $2,750. Now it is free but with a restrictive licence. Work is on-going to open source it which might make it available under Linux (although the Windows drawing primitives would need to be replaced with GTK). http://www.iceditors.com
Expensive software
virtuoso Cadence Design Systems, Inc. The market leader. The price might be $40,000 to lease for one year. http://www.cadence.com/products/custom_ic/veditor/index.aspx
max Micro Magic Inc. Looks like a commercial version of Magic. Price is $30,000 for a one year licence. Despite the fancy price tag, something was freely downloadable from the web in the 2004 timeframe. http://www.micromagic.com
laker Silicon Canvas Inc. Linux and Unix based editor. Top of the line laker-ddl is $70,000 for a one year licence. Regular Laker 3 is $35,000 for a one year licence. http://www.sicanvas.com
icstation Mentor Graphics Corp. No public pricing information could be found. http://www.mentor.com/cicd/icstation.html

My notes at Foss.In

It has been almost 3 days , i have been going to Foss.In and great to make some good friends and attending fantastic talks.

Y’day talk by Russel on
Environmental sensors with Arduino
Russell Nelson
[FOSS Workshop]

and Milosch on
Low Cost and Low Power 2.4GHz hardware hacking based on OpenBeacon

was fabulous, and were the unique in terms of that they were on HARDWARE.

But unfortunately they were not present during my talk, would have been great if they had been present there.

Was really not feeling well when till 10.55AM, there were no delegates in the Audi-3, delayed by 3 mins and was at last happy to at least found a good number attending.

Attending last couple of talks a few things that are coming in my mind are not very encouraging-

1.Product developers have not been having very good hold on software as well as hardware equally-wether they are afraid of hardware(in case they are experts in Software) and unfortunately vice versa…People still don’t know what should best be applied if they want to prototype or prodcut.Should they look for OS,Parallel language/-use a microcontrollers(which one), solder-breadbord something or use an foga-which one(!)…and the list is painfuly endless.

2.Saw a booth with robot implemented with a erlang and they used a motherboard for same -a real pitty..Whom to be blamed may be academia/teachers….or the industry;-)

3.India is still better off when it comes to people with sw+hw knowldege on managerial postion.Abroad the design concept to productisation has many dimenstions- and research is fantatstic that is spread out here and there with speciatlist in certain field but indeed very less generalists…

Tonight a music entertainment and then off to Pai Viceroy for dinner out…

Hope to indulge more chit chat with fedora guys and may be Arduino and Freeduino people..

i’ll be talking at FOSS.in at Bangalore

My talk on “VLSI/EDA Ecosystem and impact of Free and Open Source Movement”
is scheduled at FOSS.in at Banglore.

Catch me there ;-)

Its Nimhans Convention Center on 3rd Dec.

Note:FOSS.in’2009 is Worlds largest FOSS movement and conference.

How To Generate Original Creative Ideas On Any Subject

Happened to go through a beautiful article by Milo Bono and noting down some of points I could remember. I found the exercise very good and constructive.Especially for the periods when you become kind of numb and spirit is willing to go that extra mile.You neither have the direction nor motivation; have applied it myself and has worked miracles.Its about How To Generate Original Creative Ideas On Any Subject…

Random Word Stimulation is a powerful technique that provides a practical method of accessing your subconscious mind and utilize the wealth of information it contains to generate fresh new original ideas.

Regular practice causes the brain to expand its neural network to accommodate this free-form style of thinking which strengthens connection to the subconscious mind and endows the practitioner with greatly enhanced creativity and critical thinking skills.

The best part is that the benefits of improving your thinking skills comes from the practice of generating new ideas about things that matter to you. Using this simple technique you can find new ways to solve personal or business problems, create new inventions, improve existing products and services, explore your own feelings and your relationships with others, and in the larger sense – to discover new ways of thinking about absolutely anything that interests you.

Before you begin you will need a printed dictionary. Not a dictionary on your computer – an actual old fashioned analog book. You will also need a way to take notes – pen and paper or computer is fine.

Step 1:

Write down exactly what it is you want to generate new ideas about. You can work with any type of subject, there are no limitations. Try to capture the true essence of what you’re looking for in as few words as possible. Be specific in your description, a vague description will usually yield equally vague results.

The subject can be stated in the following forms:

1. Solve a Problem – State the problem to solve. Defining a problem is an art in itself. A clear perception of the problem is the first step toward discovering an optimal solution.

2. Generate Ideas – State what the new ideas are about. Perhaps to create a new invention of some kind, improve an existing product or service, or simply to gain a deeper insight into any subject.

3. Ask a Question – It’s amazing how answers can present themselves with the help of some random stimulation – answers that come from the same mind that asked the question!

Step 2:

Close your eyes. Open the dictionary to any page and place your finger on the page. Open your eyes and write down whatever word is closest to your finger. It’s very important to use that particular word whether you like the word or not. This technique works best when there is no obvious relationship between the word and your subject. Don’t choose the word – let the word choose you. Randomness is critical so use whatever word you point to, write it down, and don’t let your eyes wander over the page. Of course it’s a good idea to read the definition so you understand the full meaning of the word.

Repeat this procedure to select five or six random words from different pages in the dictionary.

Step 3:

At this point you have reached the critical juncture that will determine your level of success in using Random Word Stimulation.

Your objective is to create associations that connect the meaning of each random word to your subject in some way. Each new association represents the seed of a new idea so the more associations you create – the better your chances of generating useful results.

Exposure to the stimulus of random words will immediately trigger associations to experiences buried in your subconscious mind. The process is automatic and inevitable. Many associations and the ideas they generate will not make sense in relation to your subject. Be aware that new ideas often seem illogical, absurd, or completely irrelevant, when they first come into your mind.

Our minds have been trained to make sense of things. Thoughts that do not make sense trigger a deeply conditioned Left-Brain response of instantly discarding these thoughts as worthless fantasy. Learning to recognize this conditioned response and bring it under managed control is essential. Catch the moment when you think “This Does Not Make Sense” and turn it into a question of “How Could This Make Sense?”.

It’s the EFFORT you make to answer this question that causes the brain to respond. Exercising the body results in increased strength and enhanced capabilities of movement. Exercising the brain results in increased mental strength and enhanced capabilities of thinking.

It does not matter if your associations make sense logically or not at this point. Find any way to connect the words to your subject that you can think of. If you feel inhibited in any way make an effort to be a little outrageous until you overcome your inhibitions. Did I say “a little”? NO – what I meant to say was Extremely Outrageous!

Focus on creating as many new ideas as possible. Do not stop to justify your new ideas, for now it is enough that you have them. Have faith in the fact that your subconscious mind brought these thoughts to light for a reason, even though the reason may not be readily apparent. Success depends entirely on your willingness to temporally suspend the urge to discard new ideas and allow yourself the freedom to explore them.

Step 4:

It was Aristotle (384 – 322 BC) that formulated the three laws of association. Apply these laws in as many ways as you can to create your associations.

They are:

1. CONTIGUITY: This law explains how associations work by the stimulation of contact or nearness. A saddle may remind you of a horse, a tree of a forest, a foot of a shoe.

2. SIMILARITY: This law explains how similar things produce associations. A cat could remind you of a tiger, a tent may provoke the association with a log cabin, the human eye is similar to a camera, a stair is similar to an escalator.

3. CONTRAST: This law explains how we associate things that contrast one another. A dwarf may trigger associations of a giant, day is a contrast to night, a sad face is a contrast to a happy face, black and white are contrasting colors, tall and short, new and old, fresh and stale.

Take some time to consider each word individually and in combination. Be sure to WRITE DOWN EVERYTHING that comes into your mind no matter how silly or irrelevant they may seem at first

Step 5:

Congratulations! You have just expanded your perceptions of your subject far beyond your normal patterns of thinking in ways you would not have otherwise considered.

After a number of new associations have been generated, perhaps several dozen, you can begin to explore and discover ways to apply your associations to the matter at hand. Applying random meaning to a subject suggests ways of looking at the subject in a different context from which the subject is normally viewed. Discovering new ways to look at your subject will start to generate new ideas automatically.

ALWAYS RECORD EVERYTHING for later review. Optimal ideas often need time to gel. The old saying – “sleep on it and things will look different in the morning” is a very reliable piece of ancient wisdom. A consistent routine of short relaxed sessions is generally the best strategy for success. Regular practice of 10 – 15 minutes per day can produce astonishing results.

Addendum:

The article is focused on amplifying your creativity to generate new original ideas. Evaluating your new ideas to discern the optimal methods of implementing them in the real world requires critical thinking. Critical thinking is an esoteric blend of logic and creativity which is too involved a subject for this type of article format.

Just remember that generating new ideas is about quantity rather than quality. It’s like drilling for oil. You will often drill many dry holes before you finally hit the gusher that brings the fortunes of success.

Keep in mind that due to our education, and the many other influences in our world, most of us lean toward Left-Brain thinking. Random Word Stimulation is by nature a decidedly Right-Brain activity. Depending on your current brain state balance you may find Random Word Stimulation awkward to use at first. This is why it is highly recommend to limit your initial sessions to 10 – 15 minutes to avoid frustration.

The brain can take a few days or more to restructure its neural network to accommodate this new type of thinking. If you are having trouble getting started don’t worry about it. Just keep trying short relaxed sessions until you acquire the habit of producing results. Remember it’s the effort of trying that triggers the brain to adjust and it WILL adjust if you give it the time and patience it needs.

Education :Re-Engineered

After finishing my schooling and then during graduation ,I always had doubts regarding the pedagogy with which engineering, science, commerce and even arts at the university level(exams,syllabus et al) was carried on.

During my Master in Arts(M.Music-Khairagarh Univesrity), I got so disappointed that my disagreement and hopelessness with the system & process in specifics, culminated and made me to drop out of the college and I decided to say bye to the university system of teaching.

Later on during Gurukul days I feel that I’ve rediscovered the zeal for the education within myself.

Today I plan to write down what I believe and think about the ideal education, whether it is in arts,commerce or even science & technology!!!!

It is a rebirth for me -first as an engineer, then an artist and now as an engineering-artist who thinks slightly differently.

—————————————————————————————————————————————————————————-

Faced with rapid and incessant change in the disciplines of electronics and computer engineering (from onwards ECE),some educationists argue that we should deliberately not respond aggressively. Rather we should focus on fundamentals which will serve the students well for an entire career.

But can I ask what those fundamentals are? Naturally it’s desirable to impart all feasible fundamentals but that seems impossible considering the exponential breadth of the knowledge required for the ECE area. Now the question is -what are our educational priorities? What are the fundamental skills and knowledge that are important for a future career in ECE?

In this context electronics engineering contains integrated and device design, microelectronics, electromagnetics, control systems,digital and mixed signal processing and so on. Computer engineering encompasses the design of computer systems-the hardware(such as processors ,network swithches,peripherals)and related software(compilers,operating software and networking software)..Now the emerging areas are those who started due to overlap of both the areas like VLSI-CAD and Embedded Systems .

CHANGES IN TECHNOLOGY

There has been considerable shift from power electronics,general domain of electricity ,magnetism ie. From power transmission and rotating machinery to electronics..Then vaccum tubes to semiconductors, from discrete circuits to integrated circuits. analog to digital circuits and then mixed..And the most recent in programmable digital hardware..

The most important factor is that change in power to electronics hardly shifts fundamental knowledge and skills changes the nature of design process..But shift from vaccum tubes to seiconductors has almost opposite effects..The essential fundamentals changed from the scratch(from free space electron motions to holes and electrons in semiconductors) the design skills changed considerably but not the system design..

But shift from analog to digital and from fixed to programmable did change everything-skills, fundamental knowledge and the systems design..

Now what design skills must engineers be taught?What are the characteristics of the systems being designed,and how must they be implemented into the curriculum??

PERFORMANCE

Moore’s law (exponential increase in capability at fixed price)has profound implications over time.It has made possible the designs which are found to be unrealistic due to lack of knowledge and impractical to implement..

Now a days performance and efficiency are less critical design issues then they used to be..Of course some exceptions are there such as wireless communications. But as a whole and in widening circle of applications efficiency is eclipsed by the desire to minimize cost and time to market..

IDEA

The essential difference today is that software is sequential and hardware is concurrent but this description is also blurring..Technologies such as behavioral compilers are introducing more sequential style in the hardware..Similarly concurrent languages are making software to behave in concurrent manner..Now the question become one of choosing the right abstraction and not of choosing between hardware and software..

Since every software design when seeing from other level of absraction is a hardware design…

So I believe that students must have the liberty to select the abstraction and not the technology only..

Design of multimillion gate chips would have been impossible to accomplish without the assistance of computer aided toolsets..It is important that this role ,which was the most instrumental is the least to evolve..

IMPACT

Many engineers will be working in smaller organisations ,woking more on narrowly focussed market.In that case each engineer has to give him/herself to more diversified role,in areeas like marketing,standardisation ,contractual relationship,management and so on..Naturaly engineers who are “strictly technical”are not valued in such organisations..

Are we saying that should know not only basic technologies but also complexity management,design automation,economics and human factors..YES,absolutely you got it!!

Clearly something has to be given..

If we have to contain the knowledge explosion to some extent then we have to design the curricula in overlappinig manner..

another solution is to extend the education period ,as four years is just not sufficient to train an engineer in an environment..

MOST IMPORTANT:TEACHINIG LEARNINIG SKILLS

“Take life one day at a time and gain knowledge as if you have to live forever”

Keeping in mind the importance of the fast and ever changing trends in the industry and the technological advancements-”learning remans somewhat an unending journey “.They will face continuous change and the most important skill above all which we can impart to them is the ability to learn,knowledge to how to learn ,and wisdom to understand how to be a student??

We should depend on the students to pickup more of the technology examples ,including assignments in which they do exploration in the internet to find out current and relevent examples.And believe me this will give them the useful vocational knowledge,buttress the principle an dmost importantly a habbit will be cultivated in them to pick up the vocational knowledge on their own..

It is far more important that our students be bright ,intellectual and above all curious and unafraid of learning new things..

As in the field as dynamic as that of ours ,voactional skill can enjoy longevity.More oftenly stduents are asked to improve their programming skills or else learn “C/C++/Verilog/Java”..What I think is the fundamental concepts of digital design,data structures and object oriented concepts will prepare the better..

AN EDUCATION IN ECE MUST BE DIFFERENT FOR DIFERENT STUDENTS

It is possible ..I don’t think that something which is right but difficult should be skipped on account of its difficulty level and something wrong but easy implementation of same has to be followed..Atleast it should not be aloowed for something as beautiful and sacred as education through which we not only impart technical knowledge but values too..

CONCLUSION

I believe that there should be a proper blending between computer and electronics curriculla..And more importantly student should be taught to be a student..As they say-

“WHENEVER THE STUDENT IS READY THE TEACHER WILL APPEAR”

PROPOSAL

“We must believe that when the spirit is willing the body must follow”

We should understand and analyze the education life in universities and colleges.Exam schedules,vacations,tests,practicals-and that somewhat we are not really able to implement some of the very beautiful theories ,philosophies into real life..

As we said a student is not in the position to engross in the subject unless he is taught how to learn..some may have the internal motivation and inspiration /aspiration to learn..What about the others??

We should know the importance of group learning, learning from each other, and the liberty for the student to allow to go on his own pace..

We must equip them with the inherent tool so that they can answer on their own-the “HOW TO” tool..

We must think when one knows how to learn and is in habit of learning how to take responsibilities he becomes a perpetual and eternal human being to learn from the society and teach it in some way or the other..We must try to teach them to respect the knowledge as I trust that-

”One who doesn’t respect and utilize knowledge has no advantage above the one who doesn’t know what is knowledge..”

The Pulse

WHO ARE WE?
We are a bunch of people who are-artist, designer, educator, and writer.

WHAT DO WE DO?
Our interests and skills (the basic nouns):

  • Marketing
  • Graphic Design / Art Direction
  • Creative Direction
  • Information Design
  • Interface Design
  • Publicity
  • Publication
  • Education
  • Communication
  • Advertising
  • New Media Solutions and Combinations
  • Social Networking
  • Collaborative Spaces
  • Modular Design
  • Community Outreach Programs
  • Identifying New Markets
  • Creating New Systems
  • Site Architecture
  • Innovative Uses for Existing Systems and Media

Our interests and skills (the basic verbs):

  • Connecting
  • Communicating
  • Educating
  • Developing
  • Designing

WHERE DO WE FIT IN?
Our interests in language, communication, perception, design, human interaction, and culture has prepared us to push the boundaries in interactive design.

OUR PITCH
We see ourselves as Creative Consultants, Media Strategist, and Cultural Visionaries.

1. We would like to be part of the envisioning, brainstorm process; beyond that, one of the things we do well is to simplify what most people see as complex — we like to cut to the heart of a matter with a simple phrase, concept or image.

2. We are also good at taking a lot of disorganized elements and organizing them into logical units.

3. We are good at communicating a concept to a client or consumer, using techniques to appeal to the logical and quantitative brain, and other techniques to appeal to the emotional, non-linear and qualitative brain.

We want to work with visionaries and a team of professionals who understand the bigger picture, and with clients who see the value of interactive design and a multimedia approach to marketing, education, advertising and communication. Willing to adapt to the needs of this “ideal” interactive client, in the interest of creating cutting edge interfaces and groundbreaking design.
—-

THE DRILL DOWN — (more information on what we do and how I do it)

ARTISTS
We are primarily artists who thinks in a non-linear right-brain manner — one of our primary skills is what we call the “translation of right to left and left to right brain thinking”. As artists we have on-going interest to explore perception, as teacher / writer to impart knowledge, and as a designers to explore all forms of communication.

Artists have traditionally led cultural developments: for example, lithography was invented by an artist using a grease crayon on a stone to write down a laundry list. We believe that being a right brain dominant people in this society gives us an incredible edge in helping create the next culture, which is more right brain enabled.

EDUCATORS
The skill of translation has made me us good teacher: we have taught all kinds of people, from those with extreme left-brain dominance to those with extreme right-brain dominance; from a 2 year old to an 80 year old. We have taught a great variety of things, either directly — illustration, design, gymnastics, programming — or indirectly through interactive, and linear design — kiosks, tutorial movies, etc. We enjoy teaching and consider it an integral part of design — a good interactive design is “transparent” because it teaches the user how to use the interface without knowing that he is being taught.

As an artist and teacher(shall i call us students as well), we bring many unusual things into design; this comes from our experience in many media, as well as from my ability to synthesize a kind of general perceptual and motivational rules from those experiences.

DESIGNERS & TECHNOLOGISTS
The holistic right-brain is a good generalist, seeing the forest in spite of the trees. We are able to see how technology is changing us as a culture, and are proud to be one of those who are in a position to aid this change. The skill of translation has allowed us to communicate with all kinds of people, and has made us successful as a designer and engineer. The main skills of the communicator/designer/engineer are:

1. the ability to visualize the whole piece
2. the skill to group information logically
3. to deliver the message in digestible pieces in an easy to use (some may say beautiful), “transparent” format

WRITING / MARKETING / PR
We write as an art-form and as a teaching device. Writing is integral to our work as a designer because it enables us to communicate. We do a great deal of marketing, design and public relations through writing. Before we even start a design, we write a proposal. This proposal speaks to the client in a form that is easy for them to comprehend, and it is important to clarify the project with words before one even addresses a sketch or comprehensive design. One may say that we write in order to bring right-brain concepts into left-brain manifestation:

Discussion with the client

Me and Bharat with Satish reached N**** on time. There were 3 engineers -2 Europians and 1 Indian. After a brief introduction about ourselves I went with the Indian N*** interviewer,who was a Project Manager.In the meanwhile Bharat was having interview with Europian interviewers. My experiences and questions :

Interview-1 The Indian interviewer told me that he is the Project Manager for the big IP(not SoC),that is actually a Physical(PHY Layer) IP,which has some digital logic being implemented and a seperate RF(Radio Frequency) module .These two divisions make it a complete Analog Mixed Signal IP(AMS).

He asked me about the last project that involved ARM based AHB and also AXI bus interfaces.I could answer all the questions and later he said that they are also using the similar environment (w.r.t. ARM processors,controllers etc). Then he asked me about the BFMs (Bus Functional Models) we were using,if at all.I told him that for AHB we designed our own BFMs in Verilog and for the AXI we used VMT-Vera Modelling Technology based Synopsys Designware VIPs.

Then asked me about my role in the project,and I told that I was involved with the testbench enhancements from Verilog to IEEE 1800 System Verilog for the Random based coverage driven verification from Directed Verification,and told about all the basic building blocks with corresponding language based constructs in System Verilog.

Also told that I was also involved with writing C based SoC level patterns ,Verilog based BFM pattrerns,Fomal Verification,Assertion Based Verification,temporal coverage and covergroup coverage that produces the Functional Coverage. He asked me about the C based environment and how and what the testcases written in C doing.I could answer them all w.r.t. ARM platform internal functionality(FIQ,IRQ,different modes of Operation of ARM and interaction with other submodules).

He asked me about VHDL,that what is the differene in VHDL and System Verilog and I told him w.r.t. fork-join,OOD and my perception of confidence level to decide what language must be used .I said that SV is more effcient when it comes for verification w.r.t. Assertions,Coverage,Randomisation etc. He agreed with me and said initially we’ll be uising VHDL and later can go for some better approach if proposed and accepted. It took almost 30 minutes to finish the interview!!! Interview-2 Two europian interviewers told me something that Indian never told me.They categorically said that they require verification engineer who has worked on the Signal Processing related algorithmic verifiactions.

Then they asked about difference between Procedure and Function ,configurations in the VHDL. There were questions in each and every project I have handled (sort of I tell they listen).Then they inquired whether I have finished work in hand and am free right now and how soon can I join. They asked at what stage I have worked with VHDL,and I told that it was in fpga designing(RTL ) phase.Some questions w.r.t. signal,variable were also thrown. At last they asked me what will be the verification strategy for the “Signal Processing Algorithm Based IP”-w.r.rt. tools,methodology etc.And then we had some discussion about Formal Verification tool(Magellan,IFV) which I had used sometme back!!! It took almost 35 minutes to finish the interview!!!

Startup Acts

What are the things that you must do or consider doing in the early stages of your venture. Assuming that you have already started developing and validating your idea, the following are some activities that should be high on your priority list:

  • Find a partner
  • Incorporate and open bank account
  • Trademark your brand and register your web domain
  • Office and related infrastructure
  • Network
  • Take notes

Of course, these can happen in parallel with developing your idea…the point is to act.

Act I: Partner in Crime (or Sleeping Partner, because you will share a hotel room with them at some point)

You aren’t going to be able to save the world or change it just by yourself. You might need a partner in crime (or partners). Lots of successful collaborations have relied on this partnership formula before (Page & Brin at Google, Yang & Filo at Yahoo, Gates & Allen at Microsoft to name just three high profile successes). Here are some advantages to having a partner:

  • Sounding board
  • Complementary skill set
  • Share the workload
  • Network

What skills should you look for in a partner? Well given that nobody matches janampatris to see if your business partner will be compatible to you, in the very least I would suggest you consider the following:

  • Openness: Can you be transparent with each other
  • Wavelength: Are you on the same wavelength and do you understand each other, or are you getting stuck in “I heard what you said, but I thought you meant something else….”
  • DNA: Do you have shared values? Do you have radically different standards and ethics
  • Work ethic: Does your partner share your zeal for hard work to build your start-up, or is he/she going to be watching TV or gaming all day?
  • Shared goals: Why are you doing this? What is your end goal? Do you each agree with the purpose and end goal of what you are doing

Before the curtain comes down on Act 1, lets also discuss some of the important items that you must discuss with your partner or prospective partner.

  • What are you respective roles going to be? Are you going to be able to do the things you are each interested in doing and that move the venture forward, or will you forever be duplicating and stepping on each others toes
  • How do you plan to share the economics of the value that you hope to create? Who is going to get what share? On what basis are you going to decide? These things are best discussed very transparently upfront lest they lead to a misunderstanding later on
  • How will you decide to move forward in case of differences in opinion or strategic direction – if the best ideas win, how do you know who has the best idea. How are you going to resolve an impasse?
  • Clarify what your respective expectations are. Some implicit agreement that you will try this for at least X months or years before you decide to try something new – can you give each other some commitment, which might not have any legal binding, but at least gives you some moral binding to at least stick it out together for a while rather than jump ship if something better comes your way next week

Act 2: Of Mems and Arts and Account Numbers

Your business is probably being formed around some kind of entity. You can choose to be any one of the following:

  • Sole proprietorship
  • Partnership
  • Private Limited Company

Of the above three, the Company option is the one that is most common for various reasons, not least because if you are raising institutional funding, your investor will want some share ownership in the company, and this is most easily possible in a company. Here is what you need to do to form a company:

  • File an application with the Registrar of Companies (ROC). They claim that the process can happen start to finish in 1 hour. If you believe that, then you are the type of person who believes that India will win the FIFA World Cup in South Africa in 2010. More likely, the process will take up to a month, with lots of interruptions in the middle that you will find irrational and that you will be wholly unprepared for. Try not to break objects around you when you get frustrated with the process
  • Find a name that no one else has taken. The ROC has its own strange rules on what is and is not allowed in your company name (you can’t use the word ‘The’, using the word ‘International’ will cost you more, the activity of your business has to be stated in the name…..). You might not have the opportunity to use your chosen brand name because someone else has already taken the name. Finding a name that is acceptable to the ROC, who’s domain name is available on the web, who’s trademark is available at the trademark registry and that is desired by you for your brand was one of the tougher things that I have experienced in India. I have no answers for you, except to say that you be better be good at finding a name and have a lot of patience. Continue to try not breaking objects around you when your frustration with the process increases
  • Draft your company’s Memorandum and Articles of Association. These are legal documents that are like the Constitution of your company and are filed with the ROC. They describe the scope of business that you will conduct, what your obligations are to the other shareholders/investors and how you will govern the company. You will get delayed if you don’t have these documents ready. While you are applying for a name with the ROC etc., have some accountant or lawyer work on your Mems and Arts. Once the ROC approves these documents, you might want to make at least 30 hard copies of each, because you will need them for every little thing like opening your office, opening a bank account, getting a telephone line, investing your company’s money in a Fixed Deposit and so on
  • Get your Certificate of Incorporation. At the end of the company formation process, you will be given a document with an official ROC seal on it, like a birth certificate, except it is for your new company (and not for your cutest baby on earth). Along with your Mems and Arts, you will also need to produce a certified copy of your Certificate of Incorporation for most activities that your company does
  • Make a rubber stamp and company seal. You’ll need this for almost all documents that your directors will sign

You will have to put some capital into the company, so you will also need money to incorporate you business. Typically, you need to capitalize a private limited company in India at a minimum of Rs 1 lakh of issued and paid up capital. Authorized capital can be higher depending upon your needs, and this will require you to pay additional duties and registration charges at the time of incorporation. For the minimum Rs 1 lakh of capitalization, the ROC registration and stamping fees amountto at least Rs 15,000. You might have professional charges associated with incorporating a company that should not run you more than Rs 8,000 – Rs 10,000 per company.

Once you have the company incorporated, you must open a bank account for the company. Keep your personal accounts separate from those of the company. The bank, apart from not paying any attention to your fledgling start-up, will demand the following:

  • Company PAN Card
  • Certificate of Incorporation, Memo and Articles
  • Board resolution authorizing you to open a bank account
  • Copies of your signature, proof of registered address of the business
  • Usual bureaucratic stuff that banks want and never use

Act 3: “I love your name, I didn’t know it was still available”

By now you should have at least thought about a name for your product, service or business. You must be sure that it is not being used by anyone else in India and that you are not breaching anyone’s intellectual property rights.

You can check at the trademark registry whether your chosen brand name has been taken up or not. Any trademark and patent lawyer can do this research for you within ten days for a small fee. If the name is available, then file a trademark for it along with your logo. It will take you at least 18 months to get the trademark (don’t grumble, this is better than many western countries). But you can start using your chosen brand name and logo with the superscript TM once you have filed your application. This will give you some protection against someone using your company’s name. But, given IP violations that we see in India, don’t rest easy that no one will abuse your company’s goodwill or try and pass off as your company by using your identity.

The tougher challenge for you might come in the way of making sure that this brand name is also available for a web address, to the extent your business needs a web identity that is similar to your offline identity. I would highly recommend it, but then again your chosen name might not be available. You might struggle with domain name squatters and others who captured these domains before you. All the best in getting this domain transferred to you at a cheap price. It took us three months to track down and buy the www.iTrust.in domain name from the person who owned it.

Act 4: Office or the local internet cafe

Your business might be of the type where you needn’t get out your chaddis and can operate from the comfort of your home. All power to you (but remember that hygiene does matter).

Or, your business might need some more people who bring additional skills to the team. Not all of them will be comfortable seeing you in your chaddis or working out of your home. Where are you planning on seating all these people?

This is a very practical issue, one that will consume a lot of your emotional energy. I also believe that this is one of the toughest operating challenges that any start-up business in India will experience. India is just not a start-up friendly country as far as office availability goes. Real estate markets are very local, but generally speaking, there are very few cheap options for start-ups in India.

What you need to figure out is how you will grow out of your basement at home or the office that some friend or uncle agreed to let you use for a few months. How are you going to be able to manage any business disruption during this process?

There is this notion of start-ups operating in grungy loft-like environments which is quite true for many parts of the world. So, could you just take some space in some ramshackle structure that you could renovate on the cheap, get an internet connection and be off? Certainly sounds very romanticized, but as a practical matter it sucks. It can and will affect your hiring plans if you need to build a team.

India is not like the US where the idea of two guys or an entire team working out of a garage is a part of our cultural fabric and is idolized. On the contrary, many people will be snooty and feel disgusted at the thought of working in the type of grungy facility that you prudently think is the right thing for your business at this early stage. Most people in India want fancy offices. They couldn’t care less if a fancy office is a bad use of a start-up’s limited capital.

If you feel you are at a stage where your business needs a formal feel for your employees, vendors, customers etc., you might want to consider taking a few workstations at a business centre, where you can put your own name on the door and have a personalized phone answering service. There are enough of these sprouting up in large and medium sized cities. While they are a good short-term option, they will be expensive (as high as Rs 30,000 – Rs 40,000 per seat plus incidentals). You will reach a point where paying for that extra seat at a business centre will make it uneconomical when compared to paying rent at a leased office. Do the calculations to get a feel for what that crossover point is going to be for you.

Act 5: Our Network Lets You Talk All Over India

Ideally, instead of hanging out with your beer buddies, try to interact with people who can help you in the following ways:

  • Increase your commercial sense and awareness about the idea (everything we discussed last week about the target market, the competitive dynamics in the industry, economics et al)
  • Increase your credibility among your vendors, potential employees/investors/clients
  • Open doors for you to make progress in your business

Don’t be shy. It will only hurt you. The worst that can happen to you is that the other person might not give you time. Learn to handle this rejection. Its not going to kill you. Before you know it, you’ll get better at cold calling than you thought you were. You’ll also get better at using your network.

The following is a brief list of the kinds of people who can help

  • Former colleagues and mentors at work
  • College professors
  • That uncle of yours who is very business savvy
  • Industry experts who write for magazines, appear at conferences etc.
  • Alumni network and peers from college
  • Anyone on your wishlist of people who can help your venture progress

The more you talk, the more that you will find yourself getting lucky enough to get introduced to interesting people, or find the right break that helps you take your idea to the next level.

Act 6: Point Noted

Keep a diary or notebook where you can take notes of the thoughts that are coming into your head, the highlights or key points of meetings/conferences that you attend or themes that you must think about as you develop your idea.

Remember that good ideas, like death and flatulence, can occur at any time. You better have a way of capturing your ideas. Your mind is going to be full of thoughts and you might reach a point where your short-term memory is overloaded. There’s no shame in taking down notes in meetings, or summarizing your thoughts into your notebook quickly after a meeting. This is particularly useful for actionable items coming out of meetings.

Things To Remember

  • Find a partner. Tune into the same hertz. Discuss respective roles, economics and commitment to each other
  • Incorporate early. Save time and emotional energy later
  • Trademark your brand and register your domain names (variants thereof like .com, .in and .co.in) asap. Curse domain name squatters
  • Identify your office needs and related infrastructure. Solve. Quickly
  • Meet people. Don’t be shy
  • Take notes. Often and diligently

Anything else that you think should have been discussed? What else have you done that has turned out to be useful as your start-up has grown? Do share….curious minds want to know.

If you have any questions or comments, don’t be shy! Feel free to send them to startup@iTrust.in. Next week we are going to talk about money and lots of it.

Interesting Links

http://www.mca.gov.in/

(OK, this link is not interesting, but trust me you will be using this if you need to incorporate your company. The ‘Other Services’ section on the left has a database of existing company names. You can also get the status of your application online.)

http://www.laws4india.com/corporatelaws.asp

(You can find sample Memo and Articles on this site. I have not used this)

http://lifehacker.com/software/note-taking/geek-to-live–take-great-notes-167307.php

http://www.michaelhyatt.com/fromwhereisit/2005/04/recovering_the_.html

(These are some interesting posts on the art of effective note taking.)

http://www.richardwiseman.com/resources/The_Luck_Factor.pdf

(Recently, I have been reading a lot on Creativity, Chance and Opportunism….We are not going to talk about the role that luck plays in entrepreneurship and how to create luck. But, I think you will enjoy reading this note – it reviews a 10-year study on the role of luck in life.)

The author is a co-founder of a financial services start-up, www.iTrust.in.

Related posts:

  1. Introductory post – Entrepreneurship in India
  2. Should startups worry about trademarks issues? -Interview with M. Pavan of WhiteMoney
  3. Is Proto only for early stage startups? – Interview with Vijay Anand of Proto
  4. Seed stage investment in India : Reality check
  5. NASSCOM & ICICI’s 100+ crore Innovation fund for Indian startups

Factory Model in Fabless Semiconductor Industry —2

Reading The Toyota Way by Jeffrey Liker got me to thinking about the benefits of bringing manufacturing into the realm of ASIC design (low cost, high quality, predictability, etc). The production system reflecting that philosophy allows Toyota to consistently figure as one of the best companies in the world. It’s hard to comprehensively describe a philosophy in words but it is generally accepted that there are 14 principles that capture the essence of the Toyota Way. How can these 14 be applied to ASIC design?

My thoughts at last as conclusion and summary:

#1. Base your management decisions on a long-term philosophy, even at the expense of short-term financial goals.

Focus on core competencies and don’t waste too much energy pursuing multiple courses of action. This would apply to designs too. Trying to be good at everything from low-power wireless designs to high-performance multi-core processors is a recipe for disaster. You could extend this to methodologies or even EDA tools. Streamline. Focus. On the flip side, don’t let the lack of a large current market prevent you from pursuing technologies or products that would have a great future market. Lastly, distinguish between the two (easier Said than done but someone has got to say it ;) ).

#2. Create a continuous process flow to bring problems to the surface.

Have a methodology and design process that is transparent and efficient. It will allow you to easily spot problems in the flow. Minimize idle time and non-value added work. In the course of work, a design engineer:

  • writes a script
  • checks the syntax
  • executes the script
  • waits for the results
  • opens some reports
  • checks specific parameters

Writing the script and checking the slack are pretty much the only steps that really adds value. Everything else is a waste of the engineer’s time. What are you doing about it?

#3. Use “pull” systems to avoid overproduction.

In “pull” systems, the control flow is backward not forward. Each stage “pulls” its required inputs from previous stages rather than having inputs “pushed” onto it. You replenish items that are being depleted (i.e sold) rather than creating items in set proportions. “Pull” processes avoid overproduction by generating items in response to consumer demand. Further, note the complete lack of upfront scheduling. One of the advantages of “pull” systems is that they are self-scheduling. Each stage signals the previous stage in such a manner that the end goal is reached just in time.

In an ASIC design context, the translation of the principle would be that each stage of the ASIC design flow “pulls” data from previous stages. For example, place-and-route “pulls” data from scan insertion. There is no point in rushing through scan insertion if the scan-inserted netlist is not going to go through place-and-route for the next few days. The DFT engineer does not need to create a scan inserted netlist until the PNR engineer is ready to use the scan inserted netlist. Prioritizing is simplified, too. When juggling multiple projects, the DFT engineer simply works on the design that flags him or her first. In such a system, each engineer will work on high-priority items first and project will progress at the right pace and complete on time.

#4. Level out the workload (heijunka). (Work like the tortoise, not the hare).

Leveling out the workload has multiple benefits. Since the load on resources is close to constant, it is easy to predict demand and plan accordingly. As resources are closely matched to load, there is optimal utilization of resources as well. In organizations where the load varies wildly, the management will have to plan for the worst case. The problem is that these acquired resources will never be fully utilized during normal periods. When you level out the workload, transitional peak requirements are correspondingly low. You will require less “margin” when it comes to tools, machines and even people.

#5. Build a culture of stopping to fix problems, to get quality right the first time.

Most ASIC design projects go through concurrent evolution of RTL, floorplan and package. Sometimes, for new IP, we can expect that the IP vendor will provide multiple drops of increasing maturity as the project progresses. Given this state of affairs, does this principle imply that we must freeze RTL before running synthesis? or that the IP must be solid before the RTL is designed? No! Quality is relative to expectations and point of view. For synthesis, the meaning of high-quality IP might be that the timing information contained in the libraries are final or close to final. This would allow synthesis to proceed without nasty timing surprises down the line. The area of the IP is immaterial. For place-and-route, high quality can be taken to mean fixed IP macro size and fixed pin locations. The GDSII that matches the size and pin locations can come later during the final DRC runs. Clearly, this principle does not preclude usage of a concurrent evolution methodology.

Low quality inputs lead to low quality outputs. Rather than waste time and effort downstream, do the right thing: Get quality right the first time around.

#6. Standardized tasks and processes are the foundation for continuous improvement and employee empowerment.

The benefits of standardization are many.

  • Standardization of processes is essential to meet quality constraints. When each engineer has his or her own way of doing things, the quality of the output varies widely. Further, there is a high probability of the introduction of errors. When you diligently follow a proven process that is known to provide quality output, the chance for errors are minimized. A standard synthesis script that is to be used across all projects is an example of a standardization that makes it easy to meet quality constraints.
  • Standardization makes it easier to map out and subsequently meet schedules. When you have fully mapped the path from RTL to GDSII, you already have an idea of the critical execution path and how long the process will take. In fact, through standardization, scheduling methodology itself will be a well-documented process.
  • Standardization is the first step towards automation. When your processes are standardized with respect to inputs, outputs and measurable quality metrics, you already have a specification that can be used to automate the menial and repeatable sections of the ASIC design process.
  • Standard processes are required to be fully specified before one attempts any process improvement strategies. Before you can improve, you must know what it is you’re improving upon. Further, when the process improvements suggested are “proven”, they can be incorporated as a part of the standard design process. If you find (and prove) a way to improve simulation runtime by 15%, it is easy for everyone in the organization to reap the benefits if this improvement is incorporated into the standard ASIC design process.
  • Standardized processes that are accessible at all levels serve to empower employees. When everybody knows what needs to be done and what is important, they have a checklist against which to evaluate a situation and their proposed response. Employees are empowered because they are able to take decisions with greater independence. Further, they have the confidence that the decisions made are both right and justifiable in light of set processes.

#7. Use visual control so no problems are hidden.

The principle of visual control is not about a fancy GUI with lots of bells and whistles. It’s about providing the user the easiest possible way to check whether their work is on track or not. The idea is : summarize, summarize, summarize. Create indicators that make it easy to take decisions. It’s the difference between a IR drop text report and a heat map. The former is accurate but the latter is a more effective indicator. But, don’t think you have to draw pictures all the time. A simple summary table that captures the essence of a 10000 line timing report is also a visual indicator in this context. Effectively summarizing a report is one level of visual control. What about the entire design project? Imagine, for example, an active version of your ASIC methodology flow diagram. As tasks get completed, boxes turn green in real time. Perhaps, the size of the boxes could be indicative of the time taken for a task. In one look, the project manager knows where the project is and what needs to be done.

Be sure to tune the visual indicators to match the target end-user. Unlike the ASIC flow visual used by the design manager, a timing engineer would see a summary table with violations categorized by slack, number of violations, violation clock groups, etc. For someone at the CEO level, all they’d see is a progress bar saying ‘project 65% complete’.

#8. Use only reliable, thoroughly tested technology that serves your people and processes.

Stable processes built on stable technologies and tools is what enables a fabless ASIC company to deliver quality products on a predictable schedule. Given this, there has to be some very compelling reasons for a company to migrate to newer technologies, processes and tools.

  • Will it fit into and improve our processes?
    If no, you can stop right here. The tools serve the process and not the other way around. Before anything else, ensure that your new tools will fit into or improve your processes.
  • Will it benefit our engineers?
    Even the most technologically advanced tool is worth nothing if it cannot be used by your engineers. Ensure the people who actually going to use the tool think it’s going to improve their lot.
  • Has it been tested by us?
    Ensure that you go put the tool through its paces with meaningful tests. It’s good to have a formal evaulation process and a set of testcases to measure the benefits of any new tool or technology.
  • Does it consistently offer a marked value improvement over current tools?
    It is essential that a new tool or technology offer a significant value addition over existing ones for successful adoption. Usually, there’s substantial institutional knowledge (tacit or explicit) about incumbent tools and technologies. When you shift, there’s a learning curve that will cause some impact in terms of productivity. Further, the value addition is what will drive your people to adopt the new technology or tool. If new tools do not deliver significant value over current ones, they’s not worth using.
  • Does it require a significant rework of processes?
    Much like the previous question, some tools might require too many changes to the way you do business. Rapid change is an energizing concept for business books but suicidal when it comes to mucking around with processes.

You don’t want to become a dinosaur clinging onto processes till you become extinct. You don’t want to surf on the edge of chaos, either. How does one reconcile constant improvement of processes with the if-it-aint-broke diktat? Separate the improvement of processes from the mainstream. Live projects continue using proven technologies and processes with success. At the same time, there is a group or an effort to evaluate new technologies, tools and methodologies that have the potential to offer a value addition over current technologies, tools and processes. If the improvements show promise after exhaustive testing, they can be incorporated into the mainstream methodology.

Market of Low cost FPGAs

It is said that there is an increased adoption of programmable logic in more applications. And that, development costs of alternative technologies such as ASIC and ASSP continue to rise. Does this make a case for low-cost FPGAs? Altera seems to believe in this.

According to the company, when Altera created the low-cost FPGA market with the introduction of its Cyclone FPGAs, the consumer product market in Taiwan became a primary focus.

Its contention is worth noting. Needs of consumers change rapidly. Low-cost FPGAs are , in this scenario, said to be the best vehicle to reduce time-to-market and bring a product to market quickly, besides go in for high-volume production immediately, if required.

According to the company, changes to product specifications can occur via FPGA, even as a product is in the market. There’s probably no need to to do a redesign. Now, this would save significant time and cost, and allow market advantage.

We have just done reports on Altera, who have introduced the Arria GX family of low-cost, transceiver-based FPGAs that support PCI Express (x1 and x4), Gigabit Ethernet and Serial RapidIO standards at speeds up to 2.5Gbps.

Close by, Xilinx allows expanding FPGA development options with its ISE 9.2i design tools. This is said to have easy-to-use, built-in tools and wizards that make I/O assignment, power analysis, timing-driven design closure, and HDL simulation quick and intuitive.

The ISE 9.2i release claims to reduce memory requirements by an average of 27 percent, while providing expanded support for MS Windows Vista, XP x64, and Red Hat Enterprise WS 5.0 32-bit and 64-bit OS, respectively.

Definitely, both are worth a look, as the low-cost FPGA scenario seems to hot up!

Indian semicon industry

Our telecom and IT minister, Hon’ble Dayanidhi Maran resigned late last week. It prompted a friend to ask me whether this move would derail India’s semicon policy and the path the industry had taken.

Of course not! We’ve made a good start, and there’s still some way to go. The former minister has put us on a good path and the Indian semiconductor industry has been taking the right steps to figure among the top nations soon.

Take a look at some statistics. According to the India Semiconductor Association (ISA), India’s total semiconductor consumption in 2005 was about US $2.8 billion, met chiefly through imports. This demand is likely to exceed US $36 billion by 2015.

Electronics — whether it is office automation, consumer electronics, medical electronics, telecom or industrial automation, will require more of the semiconductor industry in India.

The major end user segments have been communications, IT and consumer electronics. Together, the important product sub-categories that would drive the semiconductor market in India are mobile handsets, wireless equipment, especially BTS equipment, which is gaining momentum, set-top boxes, and smart card terminals.

With its growing middle class population of nearly 400 million people which will only increase over time, India’s electronic equipment consumption which was estimated at around US $28.2 billion in 2005, is likely to reach US $363 billion by 2015 growing at around CAGR 30 percent. The Indian electronics equipment domestic production was US $10.99 billion in 2005 and projects an opportunity to touch US $155 billion in 2015.

Statistically speaking, the Indian semiconductor design industry, comprising of VLSI design, board design and embedded software companies, has design companies across Bangalore, NCR Delhi, Hyderabad, Chennai, Pune, Ahmedabad and Goa. All of the global top ten fabless design companies also have India operations and 19 of the top 25 semiconductor companies are already present here as of early May 2005.

The Indian semiconductor design industry (i.e. VLSI, hardware/board, embedded software) had a turnover of US $3.2 billion in 2005 with an engineering workforce of around 75,000. It is estimated to reach US $43 billion by 2015 and provide jobs to 780,000 professionals with a CAGR of around 30 percent for this period.

The ISA-EY Benchmarking Study 2007 benchmarks the semiconductor design sector in India with peer countries on factors of importance to the sector and identifies important high level focus areas and actions to facilitate sustainable growth. Peer countries are Canada, China, Czech Republic, India, Israel, Taiwan, UK and the USA.

Some of the main findings that clearly position as India as an attractive design hub are:

* Availability and scalability of talent
* Quality of talent
* Quality of technical education
* Talent cost advantage

The increased flow of international companies setting up their offshore design and development base and the ramping up of engineering human resource in the existing set up, including the non-captive companies is expected to drive the revenues for the total design market in India.

Semiconductor Design Services

A student from FMS, Delhi has contacted us for some information about our company—

1) Top five players in vlsi design services segment (wipro, sasken etc)
IBM,GE(Both India subsidiary),Wipro,HCL,Sasken,Sanyo,Mindtree.
Besides, Patni runs a dedicated ODC in India for Hitachi Japan, while HCL runs one for Toshiba Japan. Even Sanyo’s Indian subsidiary, SLTI, provides development support and design services in the area of LSI/VLSI design and embedded software.
When servicing for Europian and US market is concerned then Wipro has ODC-Offshore Development Centre for Nokia,AMD,INtel,Genesis Microchip,PMC-Sierra,nVidia etc and similarly e-Infochips too.

Interestingly these companies have to fight with the services based companies in Japan itself —Fujitsu, Hitachi, NTT Data, NEC and IBM Japan control over 70 percent of the market.

Note:You need to make some more research here!!!

2) New startups
Apara Design Automation, Digipro Design Automation, Usha Matra ,ITTIAM,Mindtree,Sasken,SolvEx,Purple Vision,Powai Labs,Ayoshi Networks,Network Programs,Control Net(acquired by PSPL) etc.

3) Some information about:
a) Highest frequency they work on
This question is specific to the product based organization or design specific.Services based company will do what has been asked for.

b) Smallest geometry
Working on 45 nano meters a very few companies but yes 65nm is quite common.Again this is design or product specific.As Tape out is done of the design hence the product based organization decides on what technology they need to work considering power consumption,area optimization,speed and frequency of operation etc.

c) Biggest Chip worked on
Try it yourself!!!!!

4) Whether they are into
a) Front end activity: Full spec development, Architectural design, IP sourcing, logical/RTL design, full custom design, mixed signal/analog, system level simulation, design verification/ specman, formal verification, synthesis & timing closure

Well tey are into different domain and areas as well,I hope the earlier mail(infact the document attached talks about the same-w.r.t networking,communication,wireless,automation,transport etc).The ODC they have e.g.Nokia,Motorola,Sony,Samsung etc will determine what kind of work /domain they are into.Basically it is Verification/simulation,Spec development,NO SYNTHESIS ,NO RTL DESIGN.

b) Backend activity: place & route semicustom, Backend Physical verification on DRC/LVS, mask preparation

VERY LESS ….

5) How is your company, “SolveEx Microsystems”, trying to capture the market? (Marketing Strategy: Long and Short time)

Our old friends network spread majorly working in Japan and Europe and now who are part of our team are the major contributors for fetching the business for us.Japan requires loyalty and knowledge of japanese is must -one of our colleague who has married to a Japanese lady and has been staying in Japan for 10 years is the main source.Then in Mercelie -France there are some teammates staying who are majorly keeping an eye over europian market.They are working from a house and it is said to be SolvEx -France :)

There efforts have got us a project in Memory controller verification and Verification Intellectual Property (VIP) developmen for the ARM based bus.

Our expertise is into Verification through System Verilog,Specman-e and Verilog.We provide consultancy for the testbench design as well which we have done for the Pune based design organization who was into medical equipments based tool sets(real time systems which were very sensitive and was based on the FPGA).

6) How effective is the marketing team and Business Development Managers (BDMs) in bringing new business as well as building customer loyalty?

We don’t have a separate marketing team but our founders, and technical people only do the multiple jobs w.r.t R & D,Team leading,market research etc.Our one point business contact is Mr.Sameer Shah -Managing Director, based in Pune and co-ordination at a higher hierarchy with France and Japan is done by Mr.Shivadaass.

All technical presenatations and know how + strategies are developed by Mr.Ashlesh Buddhiraja and Mr.Shivadaass.

There efforts have kept the confidence and the business of the group very high and RoI has become great.Just 18 people –
2 Japan
3 France
2 Pune
6 Bangalore
2 Goa and
3 Delhi

is our strength .

HOPE THIS HELPS …

P.S-
W.r.t. any further information please feel free to ask but don’t forget to send the current state of your case study or Project Sheets.

The Wrestling

There is this scene from the Malayalam movie Kizhakkunarum Pakshi where Innocent asks Mala if he can teach him how to wrestle as he wanted to take part in a competition the next week. Mala in turn sarastically asks him to come back just the previous night of the event and he would teach him everything.

I had coined this term wrestling for the so called demos on short notice which the management keeps commiting to the clients. Later the news would be announced to us and will be asked to get all the functionalities, which they have promised to demo, working in a very short time. Then happens a big day & night battle by the development team to get the demo system up and running and also most importantly good looking.

When I started my career, we used to take all the Wrestling Competitions as new challenges at work. Shankar used to constantly motivate me with his pep talks to make me work with him throughout the nights to get the things working. Working late nights and ulcers were not new things for all of us back then.

When I joined Wockix, I carried on the legacy of the term there and was succesfully made synonymous among Arun, Anoop and others. But I avoided staying overnights coz I had almost got fed up of this exercise which never beared any fruit till then. I had started giving more importance to good food and sleep.

Now as I started working in a bigger company where more people work, had better management strategies and planning, I had least expected a Wrestling to happen. But I was wrong. It happened here too. And the battle – desparate meetings, running aroud, all night work, frustrated shoutings, work on weekends, late mornings etc. kept on giving me a sense of deja vu.

Now as I have ventured into a business of my own, I think I would totally cut down the Wrestling and would encourage a clean and nice weekend and night’s sleep for the employees.Can I commit it???

Is Wresting there to stay??Will I be successful!!!!