The type of directed graph considered is that developed from the work of Karp and Miller. It has separate but interconnected directed graphs to represent data flow and control flow. These graphs are particularly suited to the specification and analysis of asynchronous parallel hardware and software. The background is discussed, and a particular model is described. Its properties and applications to software development are introduced. In particular, it is useful for partitioning and debugging software, and when modifications are being considered
{"title":"Directed-graph models and their application to software development","authors":"P. Foulk","doi":"10.1049/sm.1982.0054","DOIUrl":"https://doi.org/10.1049/sm.1982.0054","url":null,"abstract":"The type of directed graph considered is that developed from the work of Karp and Miller. It has separate but interconnected directed graphs to represent data flow and control flow. These graphs are particularly suited to the specification and analysis of asynchronous parallel hardware and software. The background is discussed, and a particular model is described. Its properties and applications to software development are introduced. In particular, it is useful for partitioning and debugging software, and when modifications are being considered","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"352 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134478787","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Bolognin, Dino Giulu, F. Pelagotti, F. Pirri, F. Pogni
The paper presents a review of the problems encountered in designing multiprocessor systems. Different structures for use in microprocessor applications are considered and analysed. In comparing various microprocessor structures, several features are considered, e.g. hardware architecture, software implications, reliability, and performance/cost ratio. In this connection, the convenience of employing microprocessors in multiprocessor structures is also pointed out. The analysis presented here provides a tutorial introduction to multimicroprocessor design
{"title":"Multiprocessor structures for microprocessors","authors":"A. Bolognin, Dino Giulu, F. Pelagotti, F. Pirri, F. Pogni","doi":"10.1049/sm.1982.0053","DOIUrl":"https://doi.org/10.1049/sm.1982.0053","url":null,"abstract":"The paper presents a review of the problems encountered in designing multiprocessor systems. Different structures for use in microprocessor applications are considered and analysed. In comparing various microprocessor structures, several features are considered, e.g. hardware architecture, software implications, reliability, and performance/cost ratio. In this connection, the convenience of employing microprocessors in multiprocessor structures is also pointed out. The analysis presented here provides a tutorial introduction to multimicroprocessor design","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"133 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134485047","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A small nucleus suitable for a multitasking real-time control application is presented. It is shown that by using an appropriate high-level language (Modula-2) the implementation of such a nucleus is straightforward, and sufficiently transparent to allow it to be readily adapted for different applications. Timing tests are given which show that the performance of the nucleus compares very well even with that obtained from assembly-coded operating systems
{"title":"Design and performance of a simple nucleus for real-time control applications","authors":"H. W. Thomas","doi":"10.1049/sm.1982.0045","DOIUrl":"https://doi.org/10.1049/sm.1982.0045","url":null,"abstract":"A small nucleus suitable for a multitasking real-time control application is presented. It is shown that by using an appropriate high-level language (Modula-2) the implementation of such a nucleus is straightforward, and sufficiently transparent to allow it to be readily adapted for different applications. Timing tests are given which show that the performance of the nucleus compares very well even with that obtained from assembly-coded operating systems","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"105 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132012941","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A technique for distributing interrupts in a multiprocessor system is described. The technique employs a decentralised control and arbitration technique which is very modular and inexpensive in interconnections. Interrupt vectoring is supported and individual processor latency to interrupts are masked from the distribution system so that high-speed distribution can be achieved. The use of the technique obviates the need to have dedicated interrupt connections
{"title":"A technique for interrupt distribution in a multiprocessor system","authors":"A. Cantoni","doi":"10.1049/sm.1982.0044","DOIUrl":"https://doi.org/10.1049/sm.1982.0044","url":null,"abstract":"A technique for distributing interrupts in a multiprocessor system is described. The technique employs a decentralised control and arbitration technique which is very modular and inexpensive in interconnections. Interrupt vectoring is supported and individual processor latency to interrupts are masked from the distribution system so that high-speed distribution can be achieved. The use of the technique obviates the need to have dedicated interrupt connections","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117156524","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The paper first identifies the concurrency requirements for a high-level concurrent programming language, and then discusses how the concurrency primitives proposed for the programming language Ada meet these requirements. This is followed by a description of an actual implementation of the Ada tasking constructs on a distributed multiprocessor computer system comprising a number of multiprocessor-shared memory stations linked by a serial communications network. A brief description of the system and the overheads involved when implementing the rendezvous mechanism on this architecture is presented, and also the implications of processing interrupts by mapping them into external entry calls to high-level service tasks are discussed
{"title":"Some experiences of implementing the ada concurrency facilities on a distributed multiprocessor computer system","authors":"G. Shoja, F. Halsall, R. L. Grimsdale","doi":"10.1049/sm.1982.0043","DOIUrl":"https://doi.org/10.1049/sm.1982.0043","url":null,"abstract":"The paper first identifies the concurrency requirements for a high-level concurrent programming language, and then discusses how the concurrency primitives proposed for the programming language Ada meet these requirements. This is followed by a description of an actual implementation of the Ada tasking constructs on a distributed multiprocessor computer system comprising a number of multiprocessor-shared memory stations linked by a serial communications network. A brief description of the system and the overheads involved when implementing the rendezvous mechanism on this architecture is presented, and also the implications of processing interrupts by mapping them into external entry calls to high-level service tasks are discussed","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"82 5","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114060347","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Recent developments in mathematics and computer science offer a sound, if unfamiliar, basis for the development of computer-controlled systems. The professional systems engineer should become as competent in these fields as he is (expected to be) in traditional mathematics and physics. The paper emphasises their application in the early phases of product development (requirements analysis and functional specification)-a prerequisite for their successful use in design and implementation. Some important aspects of 'embedded' computer systems, such as concurrency, have not been discussed because space does not allow an adequate introduction to their formal treatment
{"title":"Justification of formal methods for system specification","authors":"B. Cohen","doi":"10.1049/sej.1989.0004","DOIUrl":"https://doi.org/10.1049/sej.1989.0004","url":null,"abstract":"Recent developments in mathematics and computer science offer a sound, if unfamiliar, basis for the development of computer-controlled systems. The professional systems engineer should become as competent in these fields as he is (expected to be) in traditional mathematics and physics. The paper emphasises their application in the early phases of product development (requirements analysis and functional specification)-a prerequisite for their successful use in design and implementation. Some important aspects of 'embedded' computer systems, such as concurrency, have not been discussed because space does not allow an adequate introduction to their formal treatment","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116445422","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
It is possible to identify various levels of sophistication at which microprocessor/microcomputer applications can take place, and for which supporting facilities are needed. It can also be argued that effective teaching in the microprocessor area must be on a largely `hands-on? basis, and that application and teaching equipment needs are therefore substantially the same. The paper identifies the levels and suggests facilities in both hardware and software which are needed to support work at each level. The paper goes on to discuss particular facilities which have been developed to meet these needs. It will be seen that support at lower levels can be readily provided at modest cost and can form part of higher level support if and when it is needed, so that the complete facilities can be realised in an effective but economical manner. Typical costs at each level of support are given as a guide
{"title":"Considerations in setting up supporting facilities for microprocessor applications work and teaching","authors":"D. A. Pucknell, M. Liebelt, M. Raymond, N. Wotton","doi":"10.1049/sm.1982.0037","DOIUrl":"https://doi.org/10.1049/sm.1982.0037","url":null,"abstract":"It is possible to identify various levels of sophistication at which microprocessor/microcomputer applications can take place, and for which supporting facilities are needed. It can also be argued that effective teaching in the microprocessor area must be on a largely `hands-on? basis, and that application and teaching equipment needs are therefore substantially the same. The paper identifies the levels and suggests facilities in both hardware and software which are needed to support work at each level. The paper goes on to discuss particular facilities which have been developed to meet these needs. It will be seen that support at lower levels can be readily provided at modest cost and can form part of higher level support if and when it is needed, so that the complete facilities can be realised in an effective but economical manner. Typical costs at each level of support are given as a guide","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126045662","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The control kernel software necessary to support the execution of the Ada intertask communication primitives on a distributed multiprocessor computer system is described. The control kernel software has been written in a high-level procedural language. It is therefore portable, and represents part of a run-time support environment for a concurrent programming language known as Martlet. Martlet combines the tasking features of Ada with the sequential features of the language Pascal. The choice between master-slave and separate autonomous kernels in a multiprocessor system is analysed, and the required data structures and associated routines used in an actual implemented system are described. Finally, the mechanism of mapping interrupts into external entry calls is presented
{"title":"A control kernel to support ada intertask communication on a distributed multiprocessor computer system","authors":"G. Shoja, F. Halsall, R. L. Grimsdale","doi":"10.1049/sm.1982.0036","DOIUrl":"https://doi.org/10.1049/sm.1982.0036","url":null,"abstract":"The control kernel software necessary to support the execution of the Ada intertask communication primitives on a distributed multiprocessor computer system is described. The control kernel software has been written in a high-level procedural language. It is therefore portable, and represents part of a run-time support environment for a concurrent programming language known as Martlet. Martlet combines the tasking features of Ada with the sequential features of the language Pascal. The choice between master-slave and separate autonomous kernels in a multiprocessor system is analysed, and the required data structures and associated routines used in an actual implemented system are described. Finally, the mechanism of mapping interrupts into external entry calls is presented","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128738016","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The design methodology CYBA-L is applied to the design of a concurrent control program for a real-time application – an automatic print-roll cutter. The methodology partitions the problem into a control and a data graph; the control graph specifies the sequencing of the operations in the data graph. By a process of step-wise refinement the most abstract level of control, the front-panel operating algorithm, is hierarchically decomposed into the basic sequence of device operations needed to operate the cutter. The final design specifies the concurrency which may exist in the system
{"title":"Real-time control including concurrency. Part 1: Design","authors":"A. Munro, E. Dagless","doi":"10.1049/sm.1982.0026","DOIUrl":"https://doi.org/10.1049/sm.1982.0026","url":null,"abstract":"The design methodology CYBA-L is applied to the design of a concurrent control program for a real-time application – an automatic print-roll cutter. The methodology partitions the problem into a control and a data graph; the control graph specifies the sequencing of the operations in the data graph. By a process of step-wise refinement the most abstract level of control, the front-panel operating algorithm, is hierarchically decomposed into the basic sequence of device operations needed to operate the cutter. The final design specifies the concurrency which may exist in the system","PeriodicalId":246116,"journal":{"name":"Softw. Microsystems","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1982-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131445130","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}