Kestrel - Past, Present, Future

269
-1

Published on

I discuss the history of my Kestrel home computer project, where it currently stands, and where I'm taking it in the future.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
269
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Kestrel - Past, Present, Future

  1. 1. KESTRELPAST, PRESENT, AND FUTURESamuel A. Falvo II <kc5tja@arrl.net>Fri Jun 14 22:04:28 PDT 2013
  2. 2. YESTERDAYS KESTREL
  3. 3. KESTREL 1CPU 65816CPU Type 16-bit Accumulator CISCCPU/Bus Speed (MHz) 4 / 4RAM (Min/Nom/Max, B) 32K / 32K / 32KRAM Type AsynchronousROM —Performance 1.00
  4. 4. KESTREL 1 (CONT)Video —Audio —Keyboard —Mouse —Other I/O 65C22 VIA providing 1 synchronous serial port,and 16 bi-directional I/O pins.Timers Two 16-bit count-down (65C22)SystemSoftware—
  5. 5. KESTREL 1 (CONT)
  6. 6. TODAYS KESTREL
  7. 7. KESTREL 2CPU S16X4CPU Type 16-bit non-Forth MISCCPU/Bus Speed (MHz) 12.5 / 12.5RAM (Min/Nom/Max, B) 32K / 32K / 52KRAM Type AsynchronousROM —Performance 6.25
  8. 8. KESTREL 2 (CONT)Video MGIA (640x200, bitmapped, black and white)Audio —Keyboard KIAMouse —Other I/O GPIA provides 32 bits of fixed, unidirectionalI/O (16 inputs, 16 outputs)Timers —SystemSoftware—
  9. 9. KESTREL 2 (CONT)
  10. 10. TOMORROWS KESTREL
  11. 11. KESTREL 2CPU S16X4BCPU Type 16-bit non-Forth MISCCPU/Bus Speed (MHz) 12.5 / 12.5RAM (Min/Nom/Max, B) 32K / 32K / 52KRAM Type AsynchronousROM —Performance 6.25
  12. 12. KESTREL 2 (CONT)Video MGIAAudio 8-voice, 2-channel, SN76489-inspired PSGKeyboard KIAMouse —Other I/O GPIA provides 32 bits of fixed, unidirectionalI/O (16 inputs, 16 outputs)Timers At least two, 32-bit count-down.SystemSoftwarePort of eForth
  13. 13. KESTREL 3ACPU SeP64X11ACPU Type 64-bit Forth-Optimized MISCCPU/Bus Speed (MHz) 13.0 / 13.0RAM (Min/Nom/Max, B) 256KB / 8MB / 264RAM Type AsynchronousROM —Performance 6.50
  14. 14. KESTREL 3A (CONT)Video CGIA-1Audio 8-voice, 2-channel PSG (Kestrel-2 compatible)8-voice, 2-channel, 16-bit, DMA-fed DACsKeyboard KIAMouse KIAOther I/O GPIA-2 provides 128 bits of fixed, unidirectionalI/O (64 inputs, 64 outputs)Timers At least two, 32-bit count-down.SystemSoftwareExpanded Port of eForth (vocabularies,multitasking, simple GUI)
  15. 15. KESTREL 3BCPU SeP64X11BCPU Type 64-bit Forth-Optimized MISCCPU/Bus Speed (MHz) 50.0 / 50.0RAM (Min/Nom/Max, KiB) 256 / 8192 / 264RAM Type SynchronousROM —Performance 25.0
  16. 16. KESTREL 3B (CONT)Video CGIA-2Same as CGIA-1 but with support for synchronous RAMAudio 8-voice, 2-channel PSG (Kestrel-2 compatible)8-voice, 2-channel, 16-bit, DMA-fed DACsKeyboard KIAMouse KIAOther I/O GPIA-2 provides 128 bits of fixed, unidirectionalI/O (64 inputs, 64 outputs)Timers At least two, 32-bit count-down.SystemSoftwareExpanded Port of eForth (vocabularies,multitasking, possibly even a GUI)
  17. 17. KESTREL 3B (CONT)MMU Segmented with LinearPagingVirtual / Effective / Real AddressSpace264 / 280 / 223Page Size 4096 bytesSLB Refill Method SoftwareTLB Refill Method Software
  18. 18. KESTREL 3B (CONT)EXPERIMENTAL SUPPORT IN FORTH(MICROKERNEL IN FORTH?)EXPERIMENTAL PORT OF PLAN 9 FROM BELL LABS
  19. 19. CGIA BASIC THEORY OFOPERATION
  20. 20. CGIA BASIC THEORY OFOPERATIONSEPARATE VIDEO MEMORY FETCH FROM VIDEO MEMORYINTERPRETATION.
  21. 21. CGIA BASIC THEORY OFOPERATIONUSE ALTERNATING LINE BUFFERS TO QUEUE RASTER DATA.
  22. 22. CGIA BASIC THEORY OFOPERATIONVIDEO FETCH CAN OCCUR AT MAXIMUM BUS SPEEDINDEPENDENT OF DISPLAY RATE.(AS LONG AS IT COMPLETES BEFORE THE NEXT SCANLINE DISPLAYS, YOURE GOLDEN!)
  23. 23. CGIA BASIC THEORY OFOPERATIONCPU AND OTHER PERIPHERALS GET LEFT-OVER BANDWIDTH.
  24. 24. CGIA BASIC THEORY OFOPERATIONRAW MEMORY BANDWIDTH DETERMINES HORIZONTALRESOLUTION AND COLOR DEPTH.DESIRED CPU PERFORMANCE AND FRAME RATE LARGELYDETERMINES VERTICAL RESOLUTION.
  25. 25. CGIA BASIC THEORY OFOPERATIONHORIZONTAL RESOLUTION25MHZ DOT CLOCK: 320, 640, AND MAYBE 1280.65MHZ DOT CLOCK: 256, 512, AND 1024.
  26. 26. CGIA BASIC THEORY OFOPERATIONCOLOR DEPTHS1, 2, 4, 8, AND 16 BITS/PIXEL.
  27. 27. CGIA BASIC THEORY OFOPERATIONVERTICAL RESOLUTION25MHZ DOT CLOCK: 200, 240, 400, AND 480 SUPPORTED.65MHZ DOT CLOCK: 192, 384, 768 SUPPORTED.
  28. 28. MMU BASIC THEORY OFOPERATION
  29. 29. MMU BASIC THEORY OFOPERATIONPROGRAMS RUN INSIDE AN ADDRESS SPACE.
  30. 30. MMU BASIC THEORY OFOPERATIONRANGES OF ADDRESSES CORRESPOND TO SEGMENTS.FOR EXAMPLE, $0000-$1FFF MIGHT CORRESPOND TO THE FORTH INTERPRETER.
  31. 31. MMU BASIC THEORY OFOPERATIONSEGMENT REGISTERS INFORM THE CPU OF THE PROCESSADDRESS MAP.SEGMENTS MAP INTO AN 80-BIT VIRTUAL ADDRESS SPACE.
  32. 32. MMU BASIC THEORY OFOPERATIONEXTRA ADDRESS BITS USED TO TELL ONE PROGRAM FROMANOTHER.PREVENTS NEED TO FLUSH ALL ADDRESS MAPPING CONFIGURATION ON EVERY TASK SWITCH.
  33. 33. MMU BASIC THEORY OFOPERATIONTRANSLATION REGISTERS INFORM THE CPU WHERE PAGESOF A SEGMENT RESIDE IN PHYSICAL MEMORY.
  34. 34. MMU BASIC THEORY OFOPERATIONSEGMENT AND TRANSLATION REGISTERS ARE MANAGED BYSOFTWARE.PAGE AND SEGMENTATION FAULT HANDLERS MANAGE THESEREGISTERS ON BEHALF OF THE CURRENTLY RUNNINGPROCESS.
  35. 35. MMU BASIC THEORY OFOPERATIONDURING A TRAP, CPU MUST PRESERVE NOT JUST PC, BUTALSO INSTRUCTION PACKET AEDDRESS, FAULTING ADDRESS,AND INSTRUCTION SLOT NUMBER.
  36. 36. PSG BASIC THEORY OFOPERATION
  37. 37. PSG BASIC THEORY OFOPERATION8 VOICES2 CHANNELSSTEREO GOODNESS.
  38. 38. PSG BASIC THEORY OFOPERATIONEACH VOICE A COMPLETE COPY OF THE SAME CIRCUIT.
  39. 39. PSG BASIC THEORY OFOPERATIONSQUARE WAVE AND PRNG NOISE SYNTHESIS ONLY.I MIGHT INCLUDE PULSE WIDTH CONTROL FOR MOREINTERESTING SOUND EFFECTS.
  40. 40. PSG BASIC THEORY OFOPERATIONINSPIRED BY TEXAS INSTRUMENTS SN76489TEXAS INSTRUMENTS TI-99/4ASEGA MASTER SYSTEM... COUNTLESS OTHER USES.
  41. 41. GITHUBKC5TJA@ARRL.NEThttp://www.github.com/sam-falvo/kestrel
  42. 42. THANK YOU!Q & A
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×