Method for modifying the behavior of a state machine
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-017/50
H03K-017/693
출원번호
US-0725712
(2003-12-02)
발명자
/ 주소
Goodnow,Kenneth J.
Ogilvi챕,Clarence R.
Reynolds,Christ pher B.
Smith,Jack R.
Ventrone,Sebastian T.
출원인 / 주소
International Business Machines Corporation
대리인 / 주소
Schmeiser, Olsen &
인용정보
피인용 횟수 :
19인용 특허 :
14
초록▼
A method and system for modifying the function of a state machine having a programmable logic device. The method includes the steps of modifying a high-level design of the state machine to obtain a modified high-level design of the state machine with a modified function; generating a programmable lo
A method and system for modifying the function of a state machine having a programmable logic device. The method includes the steps of modifying a high-level design of the state machine to obtain a modified high-level design of the state machine with a modified function; generating a programmable logic device netlist from differences in the high-level design and the high-level modified design; and installing the modified function into the state machine by programming the programmable logic device based on the programmable logic device netlist.
대표청구항▼
What is claimed is: 1. A method for modifying the function of a state machine having a programmable logic device, the method comprising: (a) modifying a high-level design of said state machine to obtain a modified high-level design of said state machine with a modified function; (b) generating a pr
What is claimed is: 1. A method for modifying the function of a state machine having a programmable logic device, the method comprising: (a) modifying a high-level design of said state machine to obtain a modified high-level design of said state machine with a modified function; (b) generating a programmable logic device netlist from differences in said high-level design and said modified high-level design, said generating including extracting a high-level programmable logic device design from said modified high-level design, said extracting including comparing said high-level design to said modified high-level design; and (c) installing said modified function into said state machine by programming said programmable logic device based on said programmable logic device netlist. 2. The method of claim 1, wherein said generating a programmable logic device netlist includes synthesizing said a high-level programmable logic device design. 3. The method of claim 2, wherein said programming of said programmable logic device includes compiling said programmable logic device netlist into a pattern and applying said pattern to a static random access memory array of an integrated circuit containing said state machine and said programmable logic device. 4. The method of claim 1, further including the step of; (d) determining if said programmable logic device includes enough gates to program said modified function. 5. The method of claim 1, further including, before step (a) performing a static timing analysis to determine a maximum allowable size for said programmable logic device. 6. The method of claim 4, wherein said performing said static timing analysis is performed on a netlist synthesized from said high-level design of said state machine. 7. The method of claim 1, wherein said high-level design of said state machine is a portion of a high level design of an integrated circuit and said modified high-level design of said state machine is a portion of a modified version of said high level design of said integrated circuit. 8. The method of claim 1, wherein said programmable logic device is connectable between a next stage logic and a state latch of said state machine in either a next state path, a current state path or both. 9. The method of claim 1, wherein said programmable logic device is connectable between an input of said state machine and an output of said state machine. 10. The method of claim 1, wherein said programmable logic device is shared between said state machine and one or more additional state machines. 11. The method of claim 1, wherein said programmable logic device is selected from the group consisting of programmable read only memories, simple programmable logic devices, programmable array logic devices, generic array logic devices, programmable logic arrays, complex programmable logic devices, erasable programmable logic devices, electrically-erasable programmable logic devices, multiple array matrices, field programmable interconnect devices, static random access memory based programmable logic devices and antifuse based programmable logic devices. 12. The method of claim 1, wherein said high-level design of said state machine and said high level-design of said state machine with said modified function are in the same file format. 13. A computer system comprising a processor, an address/data bus coupled to said processor, and a computer-readable memory unit adapted to be coupled to said processor, said memory unit containing instructions that when executed by said processor implement a method for modifying the function of a state machine having a programmable logic device, said method comprising the computer implemented steps of: (a) modifying a high-level design of said state machine to obtain a modified high-level design of said state machine with a modified function; (b) generating a programmable logic device netlist from differences in said high-level design and said modified high-level design; said generating including extracting a high-level programmable logic device design from said modified high-level design, said extracting including comparing said high-level design to said modified high-level design and (c) installing said modified function into said state machine by programming said programmable logic device based on said programmable logic device netlist. 14. The computer system of claim 13, wherein said generating a programmable logic device netlist includes synthesizing said a high-level programmable logic device design. 15. The computer system of claim 16, wherein said programming of said programmable logic device includes compiling said programmable logic device netlist into a pattern and applying said pattern to a static random access memory array of an integrated circuit containing said state machine and said programmable logic device. 16. The computer system of claim 13, further including tho step of: (d) determining if said programmable logic device includes enough gates to program said modified function. 17. The computer system of claim 16, wherein said performing said static timing analysis is performed on a netlist synthesized from said high-level design of said state machine. 18. The computer system of claim 13, further including, before step (a) performing a static timing analysis to determine a maximum allowable size for said programmable logic device. 19. The computer system of claim 13, wherein said high-level design of said state machine is a portion of a high level design of an integrated circuit and said modified high-level design of said state machine is a portion of a modified version of said high level design of said integrated circuit. 20. The computer system of claim 13, wherein said programmable logic device is connectable between a next stage logic and a state latch of said state machine in either a next state path, a current state path or both. 21. The computer system of claim 13, wherein said programmable logic device is connectable between an input of said state machine output of said state machine. 22. The computer system of claim 13, wherein said programmable logic device is shared between said state machine and one or more additional state machines. 23. The computer system of claim 13, wherein said programmable logic device is selected from the group consisting of programmable read only memories, simple programmable logic devices, programmable array logic devices, generic array logic devices, programmable logic arrays, complex programmable logic devices, erasable programmable logic devices, electrically-erasable programmable logic devices, multiple array matrices, field programmable interconnect devices, static random access memory based programmable logic devices and antifuse based programmable logic devices. 24. The computer system of claim 13, wherein, in said method step (a), said high-level design of said state machine and said high level-design of said state machine with said modified function are in a same file format. 25. A method for modifying the function of a state machine having a programmable logic device, the method comprising: (a) creating a high-level design of an integrated circuit, said high-level design of said integrated circuit including a high-level design of said state machine; (b) modifying said high-level design of said state machine to obtain a modified high-level design of a modified state machine with a modified function; (c) extracting the differences between a state machine section of said high-level design and said a state machine section of said modified high level design, said differences including all lines of code in said modified high-level design that are different or not found in said high-level design; (d) generating a modified programmable logic array netlist from a programmable logic array netlist and said differences between said high-level design and said modified high-level design, said programmable logic array netlist generated from said high-level design; and (e) installing said modified function into said state machine of said integrated circuit implemented in hardware by programming said programmable logic array with a software program based on said modified programmable logic array netlist. 26. The method of claim 25, wherein said differences are new state machine inputs, new state machine outputs, output changes based on input and state, new state machine states and new or changed state decision paths or combinations thereof. 27. A computer system comprising a processor, an address/data bus coupled to said processor, and a computer-readable memory unit adapted to be coupled to said processor, said memory unit containing instructions that when executed by said processor implement a method for modifying the function of a state machine having a programmable logic device, said method comprising the computer implemented method steps of: (a) creating a high-level design of an integrated circuit, said high-level design of said integrated circuit including a high-level design of said state machine; (b) modifying said high-level design of said state machine to obtain a modified high-level design of a modified state machine with a modified function; (c) extracting the differences between a state machine section of said high-level design and said a state machine section of said modified high level design, said differences including all lines of code in said modified high-level design that are different or not found in said high-level design; (d) generating a modified programmable logic array netlist from a programmable logic array netlist and said differences between said high-level design and said modified high-level design, said programmable logic array netlist generated from said high-level design; and (c) installing said modified function into said state machine of said integrated circuit implemented in hardware by programming said programmable logic array with a software program based on said modified programmable logic array netlist. 28. The system of claim 25, wherein said differences extracted in method step (b) are new state machine inputs, new state machine outputs, output changes based on input and state, new state machine states and new or changed state decision paths or combinations thereof.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (14)
Chang Web (39939 Stevenson Common ; V-2133 Fremont CA 94538), Application specific field programmable gate array.
Kiani-Shabestari Bijan (Ascot GBX) Dunn John (Reading GBX) Lytollis Shaun (Patchet GBX), Emulation system employing motherboard and flexible daughterboards.
Lakshmanamurthy, Sridhar; Adler, Robert P.; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Tamari, Eran; Murray, Joseph; Verma, Rohit R., Common idle state, active state and credit management for an interface.
Lakshmanamurthy, Sridhar; Adler, Robert P.; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Tamari, Eran; Murray, Joseph; Verma, Rohit R., Common idle state, active state and credit management for an interface.
Lakshmanamurthy, Sridhar; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Tamari, Eran; Murray, Joseph; Wong, Kar Leong; Adler, Robert P., Issuing requests to a fabric.
Lakshmanamurthy, Sridhar; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Tamari, Eran; Murray, Joseph; Wong, Kar Leong; Adler, Robert P., Issuing requests to a fabric.
Lakshmanamurthy, Sridhar; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Tamari, Eran; Murray, Joseph; Wong, Kar Leong; Adler, Robert P., Issuing requests to a fabric.
Adler, Robert P.; Tamari, Eran; Hunsaker, Mikal C.; Lakshmanamurthy, Sridhar; Klinglesmith, Michael T.; Fanning, Blaise, Providing a sideband message interface for system on a chip (SoC).
Adler, Robert P.; Tamari, Eran; Hunsaker, Mikal C.; Lakshmanamurthy, Sridhar; Klinglesmith, Michael T.; Fanning, Blaise, Providing a sideband message interface for system on a chip (SoC).
Lakshmanamurthy, Sridhar; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Verma, Rohit R., Providing error handling support to legacy devices.
Lakshmanamurthy, Sridhar; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Verma, Rohit R., Providing error handling support to legacy devices.
Lakshmanamurthy, Sridhar; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Tamari, Eran; Murray, Joseph; Verma, Rohit R., Supporting multiple channels of a single interface.
Lakshmanamurthy, Sridhar; Hunsaker, Mikal C.; Klinglesmith, Michael T.; Fanning, Blaise; Nair, Mohan K.; Murray, Joseph; Verma, Rohit R.; Lavelle, Gary J.; Adler, Robert P., Systems and an apparatus with a sideband interface interconnecting agents with at least one router.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.