Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/1500774.1500776acmotherconferencesArticle/Chapter ViewAbstractPublication PagesafipsConference Proceedingsconference-collections
research-article
Free access

Firmware quality assurance

Published: 07 June 1982 Publication History

Abstract

The paper reviews problems, solutions, and trends in the area of firmware quality assurance. Firmware quality assurance is considered to be the certification of the fact that a firmware system meets its requirements with respect to functional correctness as well as performance, operational, and implementational properties. The emphasis of the paper is on formal correctness proofs, firmware testing, and the automatic synthesis of microcode and associated hardware structures. Firmware specifications, high-level microprogramming languages, and automated support tools are discussed as they relate to these areas. The impact of advances and trends in very large-scale integration (VLSI) on the techniques and tools for firmware quality assurance is reviewed. The observation is made that valuable results have been obtained in the areas of firmware correctness proofs and firmware testing. However, further improvements are needed to cope with the complexity of VLSI. An alternative that may overcome the limitations of these two approaches is automated synthesis of firmware and hardware and design for testability.

References

[1]
Robertson, E. L. "Microcode Bit Optimization Is NP-Hard", SIGMICRO Newsletter, Vol. 8, 1977, pp. 40--43.
[2]
Berg, H. K. "Firmware Testing and Test Data Selection", Proceedings of the 1981 National Computer Conference, Vol. 50 AFIPS Press, Arlington, Va., 1981, pp. 75--80.
[3]
Landskov, D.; S. Davidson, B. Shriver, P. W. Mallett. "Local Microcode Compaction Techniques," Computing Surveys, Vol. 12, No. 3, 1980, pp. 261--294.
[4]
Parker, A. C., W. T. Wilner. "Microprogramming---The Challenge of VLSI," Proceedings of the 1981 National Computer Conference, Vol. 50, AFIPS Press, Arlington, Va., 1981, pp. 63--68.
[5]
Goodenough, J. B., S. L. Gerhart. "Toward a Theory of Test Data Selection" IEEE Transactions on Software Engineering, Vol. 1, No. 2, 1975, pp. 20--37.
[6]
Davidson, S., B. D. Shriver. "Firmware Engineering: An Extensive Update," in Firmware, Microprogramming and Restructurable Hardware. North-Holland Publ. Co., New York, 1980, pp. 1--40.
[7]
DeMillo, R. A., R. J. Lipton, and A. J. Perlis. "Social Processes and Proofs of Theorems and Programs," Communications of the ACM, Vol. 22, No. 5., 1979, pp. 271--280.
[8]
Husson, S. S. (panel chairman). "Microcode Verification---Summary of the Panel Discussion," in Firmware, Microprogramming and Restructurable Hardware, North-Holland Publ. Col., New York, 1980, pp. 105.
[9]
Carter, W. C., "Microcode Verification," Presentation in the Session on Microprogramming---The Challenge of the 1980's, 1981 National Computer Conference, Chicago, II.
[10]
Berg, H. K., W. E. Boebert, W. R. Franta, and T. G. Moher. Formal Methods of Program Verification and Specification, Prentice-Hall, Englewood Cliffs, N. J., 1982.
[11]
Patterson, D. A. "STRUM: Structured Microprogramming System for Correct Firmware," IEEE Transactions on Computers, Vol. 25, No. 10, 1976, pp. 974--986.
[12]
Floyd, R. W. "Assigning Meaning to Programs," Proceedings of Symposia in Applied Mathematics, American Mathematical Society, Vol. 19, 1967, pp. 19--32.
[13]
Joyner, W. H., W. C. Carter, and G. B. Leeman. "Automated Proofs of Microprogram Correctness," SIGMICRO Newsletter, Vol. 7, No. 3, 1976, pp. 51--55.
[14]
Carter, W. C., H. C. Montgomery, R. J. Preiss, and H. J. Reinheimer. "Design of Serviceability Feature for the IBM System/360," IBM Journal, 1964, pp. 115--126.
[15]
Levendel, Y. H., and P. R. Menon. "Test Generation Algorithm for Non-procedural Hardware Description Languages", IEEE FTCS-11, 1981, pp. 200--105.
[16]
Su, S. Y. H., and C. L. Huang. "A Multi-Level Hardware Design Language LALSD II and its Translator," Proceedings of the 1981 International Symposium on CHDL's and Their Application, 1981.
[17]
Tsuchiya, M., and L. V. Ramamoorthy. "Design of a Multi-Level Micro-programmable Computer and a High-Level Microprogramming Language," University of Texas at Austin, Tech. Report 135, 1972.
[18]
Hill, F. J., and B. Hueg. "SCIRTISS: A Search System for Sequential Circuit Test Sequences," IEEE Transactions on Computers, Vol. C-26, No. 5, 1977, pp. 490--502.
[19]
Ciaramella, A. "Testing of Microprogrammed Units," IEEEFTCS-9, 1979, pp. 161--163.
[20]
Su, S. Y. M., and Yu-I Hsieh. "Testing Functional Faults in Digital Systems Described by Register Transfer Language," 1981 IEEE Test Conference, 1981, pp. 433--439.
[21]
Milner, R. "An Algebraic Definition of Simulation between Programs," Proceedings of the 2nd International Joint Conference on Artificial Intelligence, 1971, pp. 481--489.
[22]
Darringer, J. A., and J. C. King, "Application of Symbolic Execution to Program Testing," Computer, Vol. 11, No. 4, 1978, pp. 51--60.
[23]
Crocker, S. D., L. Marcus, and D. van-Mierop. "The ISI Microcode Verification System," Firmware, Microprogramming and Restructurable Hardware, North-Holland Publ. Co., New York, 1980, pp. 89--103.
[24]
Dasgupta, S. "Some Implications of Programming Methodology for Microprogramming Language Design," Firmware, Microprogramming and Restructurable Hardware, North-Holland Publ. Co., New York, 1980, pp. 243--252.
[25]
Hoare, C. A. R. "An Axiomatic Basis for Computer Programming," Communications of the ACM, Vol. 12, No. 10, 1969, pp. 576--583.
[26]
Eckhouse, R. H. "A High Level Microprogramming Language (MPL)," Proceedings of the 1971 Spring Joint Computer Conference, AFIPS Press, Arlington Virginia, 1971.
[27]
Dewitt, D. J. "Extensibility---A New Approach for Designing Machine Independent Microprogramming Languages," SIGMICRO Newsletter, Vol. 7, No. 3, 1976, pp. 33--41.
[28]
Malik, K., and T. G. Lewis. "Design Objectives for High-Level Microprogramming Languages," SIGMICRO Newsletter, Vol. 9, No. 4, 1978, pp. 154--160.
[29]
Carter, W. C.; W. H. Joyner, and D. Brand. "Microprogram Verification Considered Necessary," Proceedings of the 1978 National Computer Conference, AFIPS Press, Arlington, Virginia, 1978, pp. 657--664.
[30]
Berg, H. K., and W. R. Franta. "Firmware Engineering: Critical Remarks and a Proposed Strategy," Firmware, Microprogramming and Restructurable Hardware, North-Holland Publ. Co., New York, 1980, pp. 41--64.
[31]
Richter, L. "High-Level Language Extensions for Micro-Code Generation and Verification," Firmware, Microprogramming and Restructurable Hardware, North-Holland Publ. Co., New York, 1980, pp. 233--242.
[32]
Davidson, S., and B. D. Shriver. "MARBLE: A High Level Machine Independent Language for Microprogramming," Firmware, Microprogramming and Restructurable Hardware, North-Holland Publ. Co., New York, 1980, pp. 253--266.
[33]
Williams, T. W. and K. P. Parker. "Design for Testability---A Survey," IEEE Transactions on Computers Vol. C-31, No. 1, 1982, pp. 2--15.
[34]
Marwedel, P. "A Retargetable Microcode Generation System for a High-Level Microprogramming Language," SIGMICRO Newsletter, Vol. 12, No. 4, 1981, pp. 115--123.
[35]
Van Mierop, D., S. Crocker, and L. Marcus. "Verification of the FTSC Microprogram," SIGMICRO Newsletter, Vol. 9, No. 4, 1978, pp. 118.
[36]
Zimmermann, G. "The MIMOLA Design System: A Computer Aided Digital Processor Design Method" Proceedings of the 16th Design Automation Conference, 1979, pp. 53--58.
[37]
Thatte, S. M. and J. A. Abraham. "Test Generation for Microprocessors," IEEE Transactions on Computers, Vol. C-29 (1980), pp. 429--441.
[38]
Robach, C., and G. Saucier. "Dynamic Testing of Control Units," IEEE Trans. on Computers, Vol. C-27, July 1978, pp. 617--623.

Cited By

View all
  • (2021)Layout Test Structures for Custom Analog Blocks2021 Third International Conference on Intelligent Communication Technologies and Virtual Mobile Networks (ICICV)10.1109/ICICV50876.2021.9388457(574-577)Online publication date: 4-Feb-2021
  • (1988)A Microprogramming LogicIEEE Transactions on Software Engineering10.1109/32.613414:5(559-574)Online publication date: 1-May-1988

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
AFIPS '82: Proceedings of the June 7-10, 1982, national computer conference
June 1982
857 pages
ISBN:088283035X
DOI:10.1145/1500774
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

  • AFIPS: American Federation of Information Processing Societies

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 07 June 1982

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)248
  • Downloads (Last 6 weeks)36
Reflects downloads up to 19 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Layout Test Structures for Custom Analog Blocks2021 Third International Conference on Intelligent Communication Technologies and Virtual Mobile Networks (ICICV)10.1109/ICICV50876.2021.9388457(574-577)Online publication date: 4-Feb-2021
  • (1988)A Microprogramming LogicIEEE Transactions on Software Engineering10.1109/32.613414:5(559-574)Online publication date: 1-May-1988

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media