Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Debug of Microinstructions

IP.com Disclosure Number: IPCOM000087802D
Original Publication Date: 1977-Mar-01
Included in the Prior Art Database: 2005-Mar-03
Document File: 2 page(s) / 38K

Publishing Venue

IBM

Related People

Solly, DC: AUTHOR

Abstract

The immediately preceding article describes a test aid for debugging an application program on a microcode-controlled controller which does not have a conventional console. The present article describes an extension of this test aid which allows testing at the microcode level. As shown in the drawing, the microcode to be tested and special microcode used to inspect each microinstruction in the code to be tested are assigned to the lowest priority level (or levels) in the controller; the special code is arranged to have a higher priority than the microcode under test. Different tasks are occurring at this low priority level and the execution of one task can be suspended while execution of another task can be resumed at any particular microinstruction.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 100% of the total text.

Page 1 of 2

Debug of Microinstructions

The immediately preceding article describes a test aid for debugging an application program on a microcode-controlled controller which does not have a conventional console. The present article describes an extension of this test aid which allows testing at the microcode level. As shown in the drawing, the microcode to be tested and special microcode used to inspect each microinstruction in the code to be tested are assigned to the lowest priority level (or levels) in the controller; the special code is arranged to have a higher priority than the microcode under test. Different tasks are occurring at this low priority level and the execution of one task can be suspended while execution of another task can be resumed at any particular microinstruction.

Instead of the usual priority algorithm, a modification of the control code scheduler recognizes the identities of the code task under test and the test aid and forces their dispatch to the lowest and next highest priority levels respectively. By manipulating the contents of the current program status word and extracting one microinstruction at a time from the code under test, an "execute"-like function is provided by which the test aid code can force execution of one microinstruction in the code under test under controlled and monitored conditions. Branches are resolved and are then simulated.

1

Page 2 of 2

2

[This page contains 3 pictures or other non-text objects]