Article: Agnisys – Board Prototyping

By: Amanjyot Kaur, R&D Engineer

 

 

It is an established practice for most of the hardware engineers designing printed circuit boards (PCBs) to create a prototype board prior to full-scale manufacturing of boards for end products. Prototypes are typically developed to test proof-of-concept of single functions, before production of the finished product. One must however note that prototypes fall into several categories:

 

  • Proof-of-concept – this may include some of the intended functionality to prove a concept is feasible and reliable.
  • Working prototype – includes all intended functionality, but could be refined in the final design.
  • Functioning prototype – this stage includes all functionality and characteristics of the final production board.

 

Needless to say, in the prototyping stage, engineers undertake numerous experiments to ensure the desired functional behaviour is achieved.

 

Given the importance of board prototyping, ISequenceSpec (ISS) from Agnisys provides a solution to automatically generate sequences for boards. Each board has its own initialisation function, cleanup function and read/write APIs, based on the family that it belongs to. In order to run the same set of sequence across different boards, the developer often has to re-write the same set of sequence again and again. These sequences consist of several reads and writes to the register through some bus interface. Writing such sequences manually is a very tedious, error-prone and time consuming task.

 

Such sequences are automatically generated using ISequenceSpec and forms the building blocks of higher level sequences. Tensure compatibility with different boards, ISequnceSpec provides an output ‘iss_platform’. It is a generic approach which will enables engineers to create a golden sequence that can be run on various boards. The output is essentially a ‘.c’ format but with the board specific functions. Hence, once the source sequence file has been written in ISS, all that the user needs to change is the configuration of the file to run the same sequence on different boards.