4052: Difference between revisions
No edit summary |
No edit summary |
||
(11 intermediate revisions by 3 users not shown) | |||
Line 14: | Line 14: | ||
* [[Media:070-2056-01.pdf|4050 Series Reference Manual]] | * [[Media:070-2056-01.pdf|4050 Series Reference Manual]] | ||
* [[Media:070-2839-00.pdf|4054 Graphic Computing System Service Manual]] | * [[Media:070-2839-00.pdf|4054 Graphic Computing System Service Manual]] | ||
* [[Media:070-2289-02.pdf|4054 Options 30 and 31 Dynamic Graphics Operator's | * [[Media:070-2289-02.pdf|4054 Options 30 and 31 Dynamic Graphics Operator's and Service Manuals]] | ||
* [http://bitsavers.trailing-edge.com/pdf/tektronix/405x/4052_4054 4052 series manuals] @ bitsavers | * [http://bitsavers.trailing-edge.com/pdf/tektronix/405x/4052_4054 4052 series manuals] @ bitsavers | ||
* [[Media:070-5012-00.pdf|4052A GPIB Programming Guide]] | * [[Media:070-5012-00.pdf|4052A GPIB Programming Guide]] | ||
Line 24: | Line 24: | ||
The storage tube display allows the screen to retain images drawn to it, eliminating the need for frame-buffer memory. This allows the resolution to be as high as the hardware can handle, which is 1024 by 1024 logically (i.e. DAC resolution) but limited by the physical layout of the screen to 1024 by 780. It also allows the machine to dedicate all of its memory to the programs running on it (as opposed to partitioning off a section for the buffer), an important consideration at the time when memory was expensive and scarce. | The storage tube display allows the screen to retain images drawn to it, eliminating the need for frame-buffer memory. This allows the resolution to be as high as the hardware can handle, which is 1024 by 1024 logically (i.e. DAC resolution) but limited by the physical layout of the screen to 1024 by 780. It also allows the machine to dedicate all of its memory to the programs running on it (as opposed to partitioning off a section for the buffer), an important consideration at the time when memory was expensive and scarce. | ||
Released in 1978, the | Released in 1978, the 4052 came with a full 32 kB of RAM for $9,795 ($46,100 in 2023 dollars) and could be expanded to 64 kB for another $1,995 (2023: $9,400) for a total cost of $11,790 (2023: $55,500). | ||
The '''4054''' is a version of the 4052 built around the 19" screen from the [[4014]] terminal rather than the 11" screen from the [[4012]], increasing display resolution to 4,096 by 3,072. The 4052 and 4054 can display a limited amount of refreshed graphics. This is done by lowering the beam current of the writing gun so it does not trigger the threshold for stored display. The 4054 also had an Option 30 to display an extensive amount of refreshed graphics that used a [[wikipedia:Signetics 8X300|Signetics 8X300]], an early RISC-like microprocessor. There was also an Option 31 CRT with a special multi-layer phosphor to display the refreshed graphics in orange, against the stored graphics in green. The Option 30 was originally what was known at Tek as a "G-job", an unofficial project by Steve Rintala, which was eventually approved by management. | The '''4054''' is a version of the 4052 built around the 19" screen from the [[4014]] terminal rather than the 11" screen from the [[4012]], increasing display resolution to 4,096 by 3,072. The 4052 and 4054 can display a limited amount of refreshed graphics. This is done by lowering the beam current of the writing gun so it does not trigger the threshold for stored display. The 4054 also had an Option 30 to display an extensive amount of refreshed graphics that used a [[wikipedia:Signetics 8X300|Signetics 8X300]], an early RISC-like microprocessor. There was also an Option 31 CRT with a special multi-layer phosphor to display the refreshed graphics in orange, against the stored graphics in green. The Option 30 was originally what was known at Tek as a "G-job", an unofficial project by Steve Rintala, which was eventually approved by management. | ||
In early 1980s, Tektronix introduced the 4052A and 4054A facelift models, changing from ROMs with patch ROMs to EPROMs for the firmware, and replacing the discrete GPIB software implementation with a [[ | In early 1980s, Tektronix introduced the 4052A and 4054A facelift models, changing from ROMs with patch ROMs to EPROMs for the firmware, and replacing the discrete GPIB software implementation with a [[TMS9914]] GPIB controller for higher GPIB performance. | ||
==Architecture == | ==Architecture== | ||
Unlike the [[4051]], which is based on an 8-bit [[ | Unlike the [[4051]], which is based on an 8-bit [[Motorola 6800]] CPU, the 4052 CPU is based on four [[Am2901]] 4-bit bit-slice processors used together to make a single 16-bit processor. | ||
The processor is microcoded to emulate a 6800 so it can run the 4051 firmware, written in 6800 assembler, with minimal changes. | |||
The original goal of the project was to run 8 times faster than the 4051. | |||
This was to be achieved by three "factors of 2": First, the processor clock is 2 MHz, compared to the 1 MHz of the 4051 (the 2 MHz was set by the speed of the EPROMs initially used to hold the microcode). | |||
Second, the memory is 16 bits wide instead of 8, so two bytes can be accessed in a cycle, theoretically doubling the memory access speed. | |||
Finally, the data and code address spaces are separate (Harvard architecture) so program fetch of the next instruction can in principle be overlapped with processing data from the previous instruction. | |||
However, the 4051 firmware was written for the 8-bit 6800 processor so the 16-bit memory access is rarely of any benefit. The overlapping of instruction and data fetch was complicated to implement and was abandoned for the first version of the product. The result was a system with between 2 and 3 times the performance of the 4051. | However, the 4051 firmware was written for the 8-bit 6800 processor so the 16-bit memory access is rarely of any benefit. | ||
The overlapping of instruction and data fetch was complicated to implement and was abandoned for the first version of the product. | |||
The result was a system with between 2 and 3 times the performance of the 4051. | |||
Early in the project, it was proposed that the 6800-assembler-coded implementation of 48-bit floating-point arithmetic used in the 4051 firmware be implemented in microcode, | Early in the project, it was proposed that the 6800-assembler-coded implementation of 48-bit floating-point arithmetic used in the 4051 firmware be implemented in microcode. | ||
However, Tek management vetoed the idea until it became obvious that the performance goals would not be met without it. | |||
So, late in the project, the floating-point operations were implemented in microcode by adding new opcodes in gaps in the 6800 opcode map, and the firmware was rewritten to use the new opcodes instead of calling the floating-point subroutines. | |||
The result was about a 30-times improvement in speed over the 4051. | |||
This was because graphics operations are floating-point intensive − every move or draw requires two multiplies and two adds to convert from the user's coordinate space to screen coordinates. | |||
Other numeric-intensive operations such as matrix calculations benefited as well. | |||
==See Also== | ==See Also== | ||
Line 48: | Line 60: | ||
* [https://en.wikipedia.org/wiki/Tektronix_4050 Tektronix 4050 series at Wikipedia] | * [https://en.wikipedia.org/wiki/Tektronix_4050 Tektronix 4050 series at Wikipedia] | ||
* [https://youtu.be/qnjtna0tRhg?t=583 Bob Rosenbloom's Tektronix 4052A at the 2017 Vintage Computer Festival] (CuriousMarc @ YouTube) | * [https://youtu.be/qnjtna0tRhg?t=583 Bob Rosenbloom's Tektronix 4052A at the 2017 Vintage Computer Festival] (CuriousMarc @ YouTube) | ||
* [https://www.youtube.com/watch?v=yve3CYlR-TQ Tektronix 4054A images rendered (flashing images warning!)] (Use under CCA [https://www.youtube.com/@stepleton/videos Stepleton @ YouTube]) | |||
* [https://www.youtube.com/watch?v=mpRw03dRhto Tektronix 4054A Option 30 Games] (Use under CCA [https://www.youtube.com/@stepleton/videos Stepleton @ YouTube]) | |||
* [http://www.electronixandmore.com/resources/teksystem/index.html The 4052 system] | * [http://www.electronixandmore.com/resources/teksystem/index.html The 4052 system] | ||
* [https://www.youtube.com/@nikola-wan/videos Some in-depth demos from Monty McGraw @ YouTube] | |||
{{Documents|Link=4052}} | |||
{{Documents|Link=4054}} | |||
===Software=== | ===Software=== | ||
Line 54: | Line 71: | ||
* [[:Category:4050-series_computers#Links]] | * [[:Category:4050-series_computers#Links]] | ||
==Components== | |||
{{Parts|4052}} | |||
{{Parts|4052A}} | |||
{{Parts|4054}} | |||
{{Parts|4054A}} | |||
==Pictures== | |||
<gallery> | |||
Tek 4052 on submarine.jpeg | |||
</gallery> | |||
[[Category:4050-series computers]] | [[Category:4050-series computers]] | ||
[[Category:GPIB interface]] | [[Category:GPIB interface]] | ||
[[Category:RS-232 interface]] | [[Category:RS-232 interface]] |
Revision as of 09:43, 1 January 2024
The Tektronix 4052 is a graphics-capable desktop microcomputer produced by Tektronix in the late 1970s through the early 1980s. The display technology is similar to the Tektronix 4010 terminal, using a vector-driven direct-view storage CRT display (like an analog storage scope) to avoid the need for video RAM. The 4052 is an all-in-one design, with the display, keyboard, CPU and DC300 quarter-inch cartridge tape drive in a single desktop case, and includes a GPIB interface. A simple operating system and BASIC interpreter is included in ROM.
The storage tube display allows the screen to retain images drawn to it, eliminating the need for frame-buffer memory. This allows the resolution to be as high as the hardware can handle, which is 1024 by 1024 logically (i.e. DAC resolution) but limited by the physical layout of the screen to 1024 by 780. It also allows the machine to dedicate all of its memory to the programs running on it (as opposed to partitioning off a section for the buffer), an important consideration at the time when memory was expensive and scarce.
Released in 1978, the 4052 came with a full 32 kB of RAM for $9,795 ($46,100 in 2023 dollars) and could be expanded to 64 kB for another $1,995 (2023: $9,400) for a total cost of $11,790 (2023: $55,500).
The 4054 is a version of the 4052 built around the 19" screen from the 4014 terminal rather than the 11" screen from the 4012, increasing display resolution to 4,096 by 3,072. The 4052 and 4054 can display a limited amount of refreshed graphics. This is done by lowering the beam current of the writing gun so it does not trigger the threshold for stored display. The 4054 also had an Option 30 to display an extensive amount of refreshed graphics that used a Signetics 8X300, an early RISC-like microprocessor. There was also an Option 31 CRT with a special multi-layer phosphor to display the refreshed graphics in orange, against the stored graphics in green. The Option 30 was originally what was known at Tek as a "G-job", an unofficial project by Steve Rintala, which was eventually approved by management.
In early 1980s, Tektronix introduced the 4052A and 4054A facelift models, changing from ROMs with patch ROMs to EPROMs for the firmware, and replacing the discrete GPIB software implementation with a TMS9914 GPIB controller for higher GPIB performance.
Architecture
Unlike the 4051, which is based on an 8-bit Motorola 6800 CPU, the 4052 CPU is based on four Am2901 4-bit bit-slice processors used together to make a single 16-bit processor. The processor is microcoded to emulate a 6800 so it can run the 4051 firmware, written in 6800 assembler, with minimal changes. The original goal of the project was to run 8 times faster than the 4051. This was to be achieved by three "factors of 2": First, the processor clock is 2 MHz, compared to the 1 MHz of the 4051 (the 2 MHz was set by the speed of the EPROMs initially used to hold the microcode). Second, the memory is 16 bits wide instead of 8, so two bytes can be accessed in a cycle, theoretically doubling the memory access speed. Finally, the data and code address spaces are separate (Harvard architecture) so program fetch of the next instruction can in principle be overlapped with processing data from the previous instruction.
However, the 4051 firmware was written for the 8-bit 6800 processor so the 16-bit memory access is rarely of any benefit. The overlapping of instruction and data fetch was complicated to implement and was abandoned for the first version of the product. The result was a system with between 2 and 3 times the performance of the 4051.
Early in the project, it was proposed that the 6800-assembler-coded implementation of 48-bit floating-point arithmetic used in the 4051 firmware be implemented in microcode. However, Tek management vetoed the idea until it became obvious that the performance goals would not be met without it. So, late in the project, the floating-point operations were implemented in microcode by adding new opcodes in gaps in the 6800 opcode map, and the firmware was rewritten to use the new opcodes instead of calling the floating-point subroutines. The result was about a 30-times improvement in speed over the 4051. This was because graphics operations are floating-point intensive − every move or draw requires two multiplies and two adds to convert from the user's coordinate space to screen coordinates. Other numeric-intensive operations such as matrix calculations benefited as well.
See Also
- 4050E01 ROM extender
- 4907 "File Manager" floppy disk drive (GPIB)
- 4924 Cartridge tape drive (GPIB)
- 4052F10 RS 232 Printer interface ROM cartridge
- 020-0614-00 Tape enhancement ROM cartridge
Links
- 4052 @ tekmuseum.com
- Tektronix 4050 series at Wikipedia
- Bob Rosenbloom's Tektronix 4052A at the 2017 Vintage Computer Festival (CuriousMarc @ YouTube)
- Tektronix 4054A images rendered (flashing images warning!) (Use under CCA Stepleton @ YouTube)
- Tektronix 4054A Option 30 Games (Use under CCA Stepleton @ YouTube)
- The 4052 system
- Some in-depth demos from Monty McGraw @ YouTube
Documents Referencing 4052
Document | Class | Title | Authors | Year | Links |
---|---|---|---|---|---|
Tekscope 1979 V11 N3.pdf | Article | Merging High Performance Alphanumerics and Graphics with Fast Computation | Dave Barnard | 1979 | 4052 |
AX-4425.pdf | Application Note | WP1310 Signal Processing System | 1980 | 7854 • 4052 • WP1310 | |
Tektronix 4909 Hard Disk System Tekniques V5 N4.pdf | Article | 4050 Users Share Data Storage and Retrieval in New Tektronix Hard Disk | Chuck Smith • Dave Watts | 1981 | 4909 • 4050 series • 4051 • 4052 |
Tekscope 1981 V13 N2.pdf | Article | Software Innovations Increase Productivity of Desktop Computer Users | Bruce Rodgers | 1981 | 4051 • 4052 • 4054 • PLOT50 |
Tekniques vol.6 no.1.pdf | Article | 4050 Controls New Generation of Programmable Instruments for Measurement Automation | 1982 | 4051 • 4052 • TM5000 system • TM5003 • TM5006 • DM5010 • DC5009 • DC5010 • FG5010 • PS5010 • SI5010 • MI5010 • MX5010 | |
Tekniques vol.6 no.1.pdf | Article | 4052 Helps Interpret Seismic Waveforms | Patricia Kelley | 1982 | 4052 |
Tekniques vol.6 no.1.pdf | Article | 4052 GPIB Programming Guide Now Available | Dale Aufrecht | 1982 | 4052 • GPIB |
Documents Referencing 4054
Document | Class | Title | Authors | Year | Links |
---|---|---|---|---|---|
Tekscope 1981 V13 N2.pdf | Article | Software Innovations Increase Productivity of Desktop Computer Users | Bruce Rodgers | 1981 | 4051 • 4052 • 4054 • PLOT50 |
Software
- Tektronix 4051/4052/4054 Program Files (GitHub repository)
- Category:4050-series_computers#Links
Components
Some Parts Used in the 4052
Part | Part Number(s) | Class | Description | Used in |
---|---|---|---|---|
155-0152-01 | 155-0152-01 | Monolithic integrated circuit | geometry and focus correction | 4006 • 4014 • 4052 • 4052A • 4054 • 4054A |
155-0154-00 | 155-0154-00 | Monolithic integrated circuit | display multiplexer | 4006 • 4052 • 4052A • 4054 • 4054A |
Am2901 | Monolithic integrated circuit | 4-bit CPU slice | 4052 • 7912AD | |
Motorola 6821 | 156-0427-03 • 156-1205-00 | Monolithic integrated circuit | "Peripheral Interface Adapter (PIA)" | 067-1137-99 • 4052 • 4052A • 4054 • 4054A • Keithley 191 • 7250 • 7A16P • 7A29P • 7B90P • CG551AP • CG5001 • CG5010 • CG5011 |
Signetics 82S107 | Monolithic integrated circuit | field-programmable logic array | 4052 • 7854 • FG5010 |
Some Parts Used in the 4052A
Some Parts Used in the 4054
Part | Part Number(s) | Class | Description | Used in |
---|---|---|---|---|
154-0785-00 | 154-0785-00 • 154-0785-01 • 154-0785-02 • 154-0785-03 • 154-0785-52 | CRT | 19" direct-view storage CRT | GMA102A • 4054 • 4054A • 4114 • 4114A • 4114A30 • 4114B • 4116A • 4116B • 618 |
155-0152-01 | 155-0152-01 | Monolithic integrated circuit | geometry and focus correction | 4006 • 4014 • 4052 • 4052A • 4054 • 4054A |
155-0154-00 | 155-0154-00 | Monolithic integrated circuit | display multiplexer | 4006 • 4052 • 4052A • 4054 • 4054A |
Motorola 6821 | 156-0427-03 • 156-1205-00 | Monolithic integrated circuit | "Peripheral Interface Adapter (PIA)" | 067-1137-99 • 4052 • 4052A • 4054 • 4054A • Keithley 191 • 7250 • 7A16P • 7A29P • 7B90P • CG551AP • CG5001 • CG5010 • CG5011 |
STD962 | 152-0169-00 | Discrete component | 1 mA, 10 pF tunnel diode | L140 • Pentrix L20 • Pentrix L30 • 067-0518-00 • 067-0594-00 • 1L60 • 1S2 • 1503 • 3B5 • 3T7 • 4054 • 4054A • 4902 • 5S14N • 7S14 • 7T11 |
Some Parts Used in the 4054A