Computer Architecture

> Literature references and annotations by Dick Grune,
Last update: Mon Sep 14 13:33:32 2009.

These references and annotations were originally intended for personal use and are presented here only in the hope that they may be useful to others. There is no claim to completeness or even correctness. Each annotation represents my understanding of the text at the moment I wrote the annotation.
> No guarantees given; comments and content criticism welcome.

* William Stallings, ISDN and Broadband ISDN, Macmillan Publ. Comp., New York, 1992, pp. 633.
A detailed book, written clearly.

* William Stallings, Reduced Instruction Set Computers, (2nd Edn.), IEEE Computer Science Press, 1990, pp. 431.
Collection of about 30 papers, with intro.

* Arthur H. Veen, Dataflow machine architecture, Computing Surveys, vol. 18, #4, pp. 365-396. Dec. 1986,
Explains dataflow and its processors. Shows the difficulties in mapping programming constructs onto data graphs. Gives a survey of existing machines and examines the Manchester Dataflow Machine in detail. The latter is a tagged-token pipelined machine with between 2 and 100 processing elements. The paper is not uncritical of the problems that beset dataflow computing.

* Philip C. Treleaven, David R. Brownbridge, Richard P. Hopkins, Data-driven and demand-driven computer architecture, Computing Surveys, vol. 14, #1, pp. 93-143. March 1982,
Treats dataflow mainly as reduction.

* Danny Cohen, On Holy Wars and a plea for peace, Computer, vol. 14, #10, pp. 48-54. Oct. 1981,
Bit, byte and word order are a problem, since different decisions are taken in different circumstances; the inconsistent hardware properties show up in software, especially in data transmission. This paper describes the situation amusingly but quite vehemently in terms of Gulliver's Travels.
     There are two possible consistent orders. One starts with the Least Significant Bit/Byte (LSB), the other with the Most Significant Bit/Byte (MSB). Proponents of the first are called Little-Endians or Lilliputians and the second Big-Endians or Blefuscuians. The terms have stuck.
     The effects of LSB vs. MSB show up in communication between machines, but also inside machines, for example in the effects of shifts from one register to another, and in overlaying one data structure on top of another. Examples of Big-Endians are the IBM360 and the M68000. The PDP11 and the VAX are Little-Endians, most of the time. But the author points out inconsistencies in all of them. The problems can partly be remedied cosmetically by using the "Chinese Notation", in which bytes are presented in top-to-bottom order on paper. The situation is even worse in transmission orders, as defined by the pertinent protocols, resulting in the need for routines like swap_bytes().
     In the end the author proposed to toss a coin for the decision. [But today the problem is "solved" by hiding it behind interfaces.] [I think the problems is much deeper than is hinted at here. Even in a two-volume book set, placed on a book shelf, each volume holding 1000 pages, the pages are in the order 1000 - 1, 2000 - 1001 from left to right.]