"Programmer Electronic Control"

PartNo. 51-019-02, NSN 1680-99-652-3410,
Supplier K0656, Marconi Avionics, UK

(Restoration of a vintage rugged computer from the Tornado aircraft)

- The complete Story in pictures, by Erik Baigar, www.baigar.de -

News/History

30.05.2010: Added info on the inverter, the UK-Trip and latest achievements with the new PEC setup.
30.01.2010: Added first blinkenlights related information and pictures of the newly acquired waveform
generator from the early versions of Tornado.
13.12.2009: Latest achievements added to the Time-Line and supplied the "gallery" with new pictures.


Contents...

  1. Results of the reverse engineering efforts
  2. Logbook listing the major steps
  3. Roots of the unit / architecture
  4. Suspected original use
  5. Emulator for the "big brother"
  6. External information
  7. MANY THANKS
  8. Picture "gallery"
  9. Older history

1. Result of the reverse engineering efforts from 2004 until today:

Command reference of the "Programmer Electronic Control"

as I deciphered and named the commands. This contains lots of technical information,
timings, pin-outs and much more. Current status: The 12-bit processor is fully
operational - even interrupts and the IO system are working now. A "hello world"
is perfectly running on an attached LCD display and the unit can control a
CalComp M84 pen plotter.

Photo Suite of all the printed circuit boards of the unit:


(1) Driver Board, 1680-99-646-6754; (2) Data Board, 1680-99-646-6755; (3) Core Memory, 5841-99-652-3386;
(4) Driver Board, 1680-99-646-6754; (5) Control Board, 1680-99-646-6753; (6) Data Register, 229-013909;
(7) Data Register, 229-013909; (8) Control Register, 229-013551; (9) Function Decode, 229-013549;
(10) Processor Timing, 229-013547; (11) RxTx Interface, 229-013545; (12) Serial Parallel Converter, 229-016304;
(13) Decode and Interrupt, 229-013905.


The unit consists of 15 boards of standard size 100mm*160mm, containing a total of 497,
mainly standard mil-spec TTL chips. All of them are identified, even the exotic four
custom ones and data-sheets are available. Here is a

Collection of technical information

on all chips used in the PEC's processor including statistics of the date codes.

2. The Chronology of the project...

...starting in 2004 is a longer story. Thus the complete diary is located on a seperate page, listing all major steps
and achievements during the years of reverse engineering: TimeLine. This page contains and explians
many of the pictures shown in the gallery below. The latest achievements from this logbook are the following:
1/30/2010 Recycled some venerable switches and buttons for the PEC's blinkenlights to be build by dismantling a "Data Monitoring Unit", NSN 6625-99-6559680, manufactured by Smiths Industries under part. no. 2001TE/1. Rumors have been, that this was used on some computer within the early Harrier VSTOL aircraft. The chance of finding such a beast is zero and thus the switches will get some new job soon. [DataMonitoringUnit-Parts.jpg]
3/26/2010 After receiving last parts for the housing the 3 phase inverter is completed now. This inverter is based on three audio amplifiers, each being capaple to deliver 60W of power. Three transformers allow different voltage ranges (0-120VAC and 0-240VAC) by switching from the star to a delta configuration.
Initially the 24V supplies have not been strong enough for a continuos operation of PEC, but with the new supplies this works very well.
[3phaseInverter-2010326.jpg]
[3phaseInverter-2010325.jpg]
4/14/2010
to
4/18/2010
Had a very exciting second visit to the UK: Visited the museum in Bletchley Park holding an Elliott 800 in working condition and a non working 905. Lot of time is spent by volunteers in maintaining the wonderful collection of avionics items at the Farnborough Air Sciences Trust Association which was well worth the visit as was the excursion to Kent to visit the Rochester Avionics Archives holding many items manufactured during the long history of the vintage Elliott Brothers Ltd. to become part of the current BAe Systems.
Another very impressive event was the demonstration of Roger's huge ICT1301 machine which Roger and Rod lovingly call Flossie. Due to the vulcanic eruption the schedule of the weekend got severely disturbed, since my wife was not able to join me for sightseeing in London. So after a visit in Cosford to see the mighty TSR2, I spent the sunday for a strange journey back to Munich: Travel took 24 hours by 10 different means of transportation instead of 2h time of flight.
But the highlights of this journey definitively have been the nice evening with Peter and the time with Terry and Val - Many Thanks!
[Elliott905-Bletchley.jpg]
[TSR2-Cosford.jpg]
5/30/2010 After struggling with the Altera Quartus 9.1 software for several weeks I got a fix of the problem from Altera in April. Now there is progress with the actual setup again and on 19th of May the word generator module was working for the first time. The two transputer setups work in parallel now: The old one wired to the backplane still controls PEC and is able to access the core memory. The new one, being connected to the debugging plug is going to implement the first new functions and will later make the old transputer superfluous.
On 5/25/2010 the second module in the new setup holding a memory expansion, giving the PEC an additional 24k words of memory ran for the first time. Since the PEC is an asynchronous machine, it is able to run at nearly twice the speed from silicon memory than from its internal core. But due to thermal issues I artificially slowed silicon memory's speed down.
Up to now the software on the Transputers is strictly single-tasking, but for the ongoing project (experimental PPT and TTY emulation) it has to go multi-tasking...
[PEC-SetupExplained-20100518.jpg]

3. What are the roots of the unit / architecture...

Talking to experts involved with the computer company Elliott (later GEC-Marconi, Marconi Avionics
and today Selex SAS), based in the UK, it was possible to identify the box by comparison of the command set:

The "Programmer Electronic Control" similar to the 12/12 from Elliott.

This is a downsized 12-bit variant of the bigger 18-bit machines of the Elliott 900
series, delivered beginning in 1965. For information on these (e.g. the 920), look at the
"Our Computer Heritage" project of the Computer Conservation Society documenting
British computers.

The following documents have been carefully preserved for over 30 years by
Terry Froggatt and I am really happy that he shared them with me: The PEC's cousin,
the Elliott 12-12 computer, was used in various applications starting in the
1970ties and some may still be online today! One example of it's use is the auto-
throttle computer of the Boeing 747-100. Look at the flyer and the specification
of the Elliott 12-12 from around 1973:

12-12-Specification

The 12-12 essentially is a repacked version of the deskside Elliott 902,
which was optimized for size, power consumption and the other needs of
airborne computing. Following are a picture and the detailed command
description of the "full size" Elliott 902:

902 Facts Card

The following pictures show the current (6/2008) setup of the Programmer
Electronic Control on my bench with and without explanations. In the last
picture you can see an original paper tape (dated 1/10/1970) sitting on
a PCB of the PEC. I got this from Terry Froggatt, too and it contains the ORIGINAL
assembler for the Elliott 902 called SAP or "Symbolic Assembler Program".

with explanations with explanations IRQ bridged

The next milestones in my hobby are to build blinkenlights for the Programmer Electronic Control,
paper tape and teletype simulations and to execute this software.


4. Suspected original use of the unit...

Avionics specialists suspect that the Programmer Electronic Control was part of the
first models of Tornado ADV's Foxhunter AI24 radar set. According to the timeline, the PEC
might have been used in Stage1 and before and thus probably was retired in 1991.

There must have been "core store loaders" for in field programming of the units
and "operator data panels" (blinkenlights) for service. But my fear is, that documentation
and all other arefacts are long gone...

Any information, hardware, hints, pictures and discussion is absolutely welcome,
please contact me at erik@baigar.de.


5. Emulator for the "big brother" of the PEC...

Software development for the 12-bit Elliott machines was often done on the bigger
18-bit machines (903, 920,...). For these Elliott 900 series of computers there
is a fascinating emulator initially written in 1983 by Terry Froggatt to run on VAX and
later on DOS using Meridian Ada. Afterwards it has been slightly modified and improved by
Don Hunter, who fixed a bug and added support for the plotter and many examples for
the included Elliott Algol compiler. The DOS version (with and without plotter
support, source, manuals and with LOTs of examples) can be found on Don Hunter's page
as a zip-file.

Since I wanted to learn more on Ada, the Elliott 900 and since I love my SGI/IRIX boxes, I recently
ported this great emulator to gnat using GtkAda for the plotter emulation. This one runs on UNIX
operating systems and on Windows 2000/XP. The windows binary including the Apollo8 example can be
downloaded from here (for a UNIX version, please contact me via email):
Windows binary distribution, 1M3, Win32:

Starting the emualtor, the mission of Apollo8 around the moon is simulated: You will observe a
disaster happening at the end. This is due to a wrong staring height in the simulated mission.
If you change the 305km in the last line of ElliottIn.dat back to the correct 300km, everything
goes smooth again...

For many more examples and the original emulator, please visit Don Hunter's page and keep in mind,
that the Sim900al-NT runs many times faster on a decent PC or SparcBook than on the Elliott903!!
By the way: The Apollo8 code you are executing in the emulator must be from around 1964, the "stone
age" of computer technology...


6. External information...

...For more detailed information, please look at the following threads on the usenet or follow the links given:

And some related information/threads:

7. MANY THANKS...

...to the people who contributed by answering to my questions in the above mentioned threads, by supplying information or just by listening or being interested in this project! But the journey is not yet finished, thus:

Does any one know about the origin / original purpose of these units???

Wanted: Information & Artifacts: "Core Store Loader", "Operator Data Panel",...

Any input and every small piece of information is highly welcome. Please contact me at erik@baigar.de


8. Various pictures related to the "Programmer Electronic Control"
and their reverse-engineering (chronological, click to enlarge):

[p8172677.jpg]
p8172677.jpg
37282 bytes
400 x 300
[TypePlate.jpg]
TypePlate.jpg
107919 bytes
644 x 501
[Sticker1.jpg]
Sticker1.jpg
41609 bytes
533 x 378
[Sticker2.jpg]
Sticker2.jpg
72754 bytes
642 x 452
[Connectors.jpg]
Connectors.jpg
123828 bytes
682 x 511
[ModuleRack.JPG]
ModuleRack.JPG
212096 bytes
1280 x 960
[Modules.JPG]
Modules.JPG
167486 bytes
1280 x 960
[BoxBottomWithOutSupply.jpg]
BoxBottomWithOutSupply.jpg
113159 bytes
802 x 602
[CorePlaneLeft.jpg]
CorePlaneLeft.jpg
232751 bytes
1026 x 678
[CorePlaneRight.jpg]
CorePlaneRight.jpg
231696 bytes
1079 x 687
[DiodeArraysAndCore.jpg]
DiodeArraysAndCore.jpg
133177 bytes
807 x 627
[MemDriverBrd.JPG]
MemDriverBrd.JPG
260218 bytes
1280 x 960
[CoreMemoryEarlyDoku.jpg]
CoreMemoryEarlyDoku.jpg
358936 bytes
1037 x 1500
[ProcessorTiming.JPG]
ProcessorTiming.JPG
301171 bytes
1280 x 960
[PowerSuppSubAssy1.jpg]
PowerSuppSubAssy1.jpg
83507 bytes
642 x 482
[PowerSuppSubAssy2.jpg]
PowerSuppSubAssy2.jpg
85468 bytes
642 x 482
[SupplyBackplane.jpg]
SupplyBackplane.jpg
49321 bytes
642 x 482
[SupplyWithSubAssembly.jpg]
SupplyWithSubAssembly.jpg
83372 bytes
802 x 602
[Screws.jpg]
Screws.jpg
41871 bytes
643 x 640
[Switches.jpg]
Switches.jpg
74399 bytes
501 x 420
[DeviceUnderTest.jpg]
DeviceUnderTest.jpg
77114 bytes
640 x 480
[CoreMemory.jpg]
CoreMemory.jpg
608548 bytes
1614 x 2146
[PROMsFunctionDecode.jpg]
PROMsFunctionDecode.jpg
170548 bytes
1015 x 753
[TornadoLanding.jpg]
TornadoLanding.jpg
42483 bytes
980 x 705
[TornadoComputerUnitSK10.gif]
TornadoComputerUnitSK10.gif
30570 bytes
1227 x 863
[TrapuInterface.jpg]
TrapuInterface.jpg
167871 bytes
803 x 648
[CoreConnectConsole.jpg]
CoreConnectConsole.jpg
139067 bytes
755 x 480
[Connection.jpg]
Connection.jpg
106177 bytes
642 x 482
[T805RefreshProblem.jpg]
T805RefreshProblem.jpg
50354 bytes
672 x 400
[RefreshDetect.jpg]
RefreshDetect.jpg
98007 bytes
641 x 409
[T805RefreshProblemSolved.jpg]
T805RefreshProblemSolved.jpg
52654 bytes
672 x 400
[T805refreshOK.jpg]
T805refreshOK.jpg
196688 bytes
1023 x 495
[ConsoleLCDonDPL03.jpg]
ConsoleLCDonDPL03.jpg
89678 bytes
754 x 888
[Ferrit.jpg]
Ferrit.jpg
50617 bytes
525 x 424
[PEC_SingleWrite.jpg]
PEC_SingleWrite.jpg
200612 bytes
933 x 616
[PanLink1.gif]
PanLink1.gif
7004 bytes
672 x 400
[PanLink2.gif]
PanLink2.gif
9638 bytes
672 x 400
[SetUpPanorama.jpg]
SetUpPanorama.jpg
762277 bytes
4000 x 2011
[SetUpPanoramaExplained.jpg]
SetUpPanoramaExplained.jpg
131794 bytes
1280 x 644
[920B_Function12_AP112H-0301.gif]
920B_Function12_AP112H-0301.gif
715975 bytes
2391 x 1565
[_SecondUnit.jpg]
_SecondUnit.jpg
72891 bytes
750 x 951
[_SecondUnitTypePlate.jpg]
_SecondUnitTypePlate.jpg
139685 bytes
1101 x 785
[_View1.jpg]
_View1.jpg
83963 bytes
707 x 764
[_View2.jpg]
_View2.jpg
141305 bytes
1053 x 818
[_View3.jpg]
_View3.jpg
153753 bytes
1070 x 830
[_SecondUnitUnpacked.jpg]
_SecondUnitUnpacked.jpg
116429 bytes
745 x 819
[_BackplaneView.jpg]
_BackplaneView.jpg
39464 bytes
424 x 439
[_CageEmpty.jpg]
_CageEmpty.jpg
188995 bytes
1028 x 935
[_ConditioningLabel.jpg]
_ConditioningLabel.jpg
77811 bytes
768 x 1024
[_CoolantConnector.jpg]
_CoolantConnector.jpg
55640 bytes
949 x 947
[_DifferenceBetweenUnits.jpg]
_DifferenceBetweenUnits.jpg
85220 bytes
677 x 717
[_ModulesPulled.jpg]
_ModulesPulled.jpg
161397 bytes
1280 x 960
[PEC_TrapuIO20081022.JPG]
PEC_TrapuIO20081022.JPG
191083 bytes
1024 x 677
[CPLD-EvalPCBonPEC.jpg]
CPLD-EvalPCBonPEC.jpg
395451 bytes
1159 x 1192
[Rotary100Winverter.jpg]
Rotary100Winverter.jpg
156666 bytes
1280 x 875
[PECversuchInverter20090214a.JPG]
PECversuchInverter20090214a.JPG
356318 bytes
2024 x 955
[SolderedPinsPain.jpg]
SolderedPinsPain.jpg
113980 bytes
891 x 897
[InsertionRemovalTools-20090306.jpg]
InsertionRemovalTools-20090306.jpg
127217 bytes
800 x 523
[DMCcrimper20090311a.jpg]
DMCcrimper20090311a.jpg
58218 bytes
640 x 493
[EmptyPCBs.jpg]
EmptyPCBs.jpg
171733 bytes
1280 x 899
[FastLink-PCB.jpg]
FastLink-PCB.jpg
128303 bytes
800 x 600
[FastLinkPCB-20090311.jpg]
FastLinkPCB-20090311.jpg
99139 bytes
720 x 550
[TrapuLinkPCB-20090310.jpg]
TrapuLinkPCB-20090310.jpg
125126 bytes
800 x 600
[DPL07experiment.jpg]
DPL07experiment.jpg
140999 bytes
800 x 706
[PlotterSetup.jpg]
PlotterSetup.jpg
98629 bytes
819 x 1024
[PlotterPECTOS.jpg]
PlotterPECTOS.jpg
80191 bytes
1036 x 656
[PlotterOutput.jpg]
PlotterOutput.jpg
125914 bytes
1152 x 920
[Plotter-HPGL.jpg]
Plotter-HPGL.jpg
58750 bytes
838 x 629
[DPL07-Cable-1.jpg]
DPL07-Cable-1.jpg
195642 bytes
1024 x 512
[DPL07-Cable-2.jpg]
DPL07-Cable-2.jpg
129247 bytes
800 x 600
[DPL07-Cable-3.jpg]
DPL07-Cable-3.jpg
239522 bytes
800 x 943
[Facit-N4000-PaperTape.jpg]
Facit-N4000-PaperTape.jpg
141239 bytes
640 x 1110
[Elliott-SAP.jpg]
Elliott-SAP.jpg
119303 bytes
1024 x 553
[WaveformGenerator-51-011-21.jpg]
WaveformGenerator-51-011-21.jpg
200856 bytes
1024 x 1313
[WaveformGenerator-51-011-21-TypePlate.jpg]
WaveformGenerator-51-011-21-TypePlate.jpg
95492 bytes
800 x 457
[PEC-LED-Line.jpg]
PEC-LED-Line.jpg
330009 bytes
1280 x 960
[PEC-LED-Line-Jig.jpg]
PEC-LED-Line-Jig.jpg
217426 bytes
1024 x 749
[DataMonitoringUnit-Parts.jpg]
DataMonitoringUnit-Parts.jpg
143448 bytes
800 x 569
[3phaseInverter-2010326.jpg]
3phaseInverter-2010326.jpg
111790 bytes

[3phaseInverter-2010325.jpg]
3phaseInverter-2010325.jpg
150920 bytes

[Elliott905-Bletchley.jpg]
Elliott905-Bletchley.jpg
105703 bytes

[TSR2-Cosford.jpg]
TSR2-Cosford.jpg
139247 bytes

[PEC-SetupExplained-20100518.jpg]
PEC-SetupExplained-20100518.jpg
734835 bytes


9. Older history:

6.7.2009: Checked all pages for dead links and removed them; added diary to the "PEC-page.
6.6.2009: Added pictures of latest milestones - plotter is running under control of PEC now.
Pictures sorted chronologically. Added index.
31.3.2009: Added counter and some explanations to the documents from Terry Froggatt.
8.6.2008: Added technical information on all chips, used on the unit together
with date code statistics. Added picture of 902, too.
4.5.2008: Added NSNs, Part-numbers and pdf with pictures of all PCBs.
29.4.2008: Added Elliott 900 series emulator (Thanks to Terry Froggatt & Don Hunter).
28.4.2008: News: The unit is said to be part of the early Foxhunter Ai24 radar
of the Tornado ADV aircraft.
28.2.2008: Added some links (picture 903, time-line).
19.1.2008: Added pdf containing all secrets I prayed out of the box,
box identified as an Elliott 12/12. Probably NOT from Tornado.
5.1.2008: Added pdf files of the relevant threads in newsgroups etc.
7.11.2007: Update with new pictures (Starting with _), including new unit.
15.9.2007: Got second of the units, serial number 129. Both units show same
behavior in all respects. New unit has maintenance sheet attached,
thus assumption is: Both units are OK. ;-)
17.6.2008: Now ALL (even the custom ones) chips in the PEC are identified, thus there
is an updated version of the Reference-Page with pin-outs.
15.6.2008: Added additional Foxhunter picture, both now available in better
resolution. Uploaded new documents about 12/12 and 902 but not
properly included yet - sorry.


Generated with help of HTMLThumbnail 1.1.4 by Erik Baigar on SGI/I2, 15/06/2008, viewed times. Impressum: HIER.