Table of Contents
/* Imported from Wayback Machine
Original URL : https://www.retrobrewcomputers.org/doku.php?id=builderpages:muellerk:multicomp_july_2019 Snapshot date: 2022-05-18 Generator : wayback-archiver
*/
Table of Contents
Multicomp with larger FPGA
History
In June this year I got a link from a forum member regarding CycloneIV boards on AliExpress. I followed the link and was very surprised to find besides the “old” CycloneIV system a newer one with much larger FPGA (EP4CE15F22N8) (1) offered for a reasonable price (board size:8×6.4cm^2, round about half the size of my Multicomp !). That was the start for a new project: To rework my Multicomp. Six weeks later, the German customs send me a letter, claiming the unpaid tax (19%). Ok, the bought boards are in Germany… It took me 4 hours to drive to their office, pay the tax and get back to my home… Why 4 hours: It's a small customs office in a also small town. The physical drawback: 1 hour local customs time is 2 hours real-time, time is relative…
(1) It looks like that the QMTECH EP4CE15-SDRAM core board is running out of stock (2020.06.09: 500pcs. in stock again - all fine
]]
+ = VCC(3V3), G = GND
D = SDA, C = SDL
? = don't connect|
|
PIO PCB. You can order a PCB batch (3 pcs.) if you want here.
Joystick PCB. You can order a PCB batch (3 pcs.) if you want here
REMARK 1: I am in no relation to Aisler-B.V., to offer a link to the PCB's is ONLY a simplified way to order them without using kiCAD or what else… You are free in any way to choose a different manufacturer for the PCB's.
REMARK 2: A alternative (cheaper) PCB manufacturer may be JLCPCB in USA, but there I do not have a account. You will have to do that by your own and upload the gerber files. Don't forget to take into account the unavoidable higher shipping costs if ordering from outside the USA.
Helpful hints for assembling
I2c-EEProm-Clock-Module Adapter I've slightly modified the old adapter this way, that the DS3231 clock module is now soldered to the PCB. Still remove the old pinheader and solder a new straight one the IC side so the module can be soldered with the battery holder on top to the PCB. See picture 1 below. A 3D view is included as a subpicture. The two IO's on the I2C Header are renamed to INT1 & INTB. At present they are not used as interrupt input, but they are now additional IO's of the PIO-Port0 on the Joystick PCB. More in the Multicomp System Manual downloadable below. All data is in the archive “Multicomp-July-2019_V1.0.0_I2C-Clock_EEPROM-Adapter.tar.gz”
Joystick-PCB: Preparing J5, R21/R22 for soldering first
R21/R22: Both resistors must be mounted on the bottom side of the PCB !
See picture 1. Do this as your first step !
Preparing J5 Pin-Socket: I've used a 10×1 pin-socket from the Arduino Project for mounting stackable PCB's on a Pin-Header (There are 20×2 stackable Pin-Sockets from the Raspbery-Project too, may be that they have to be treated in the same way). When trying to plug them on J6 (on the Multicomp-Board) I've found out that they can't be mounted side-by-side. So some mechanical treatment was necessary. After doing this, check out that all pins are vertical aligned when plugged into the box-header on the Multicomp board (J6). Next serveral M3 Nylon Hex Spacer (length see picture2) and Nylon washers, M3x0.8mm thick, are needed. I bought a larger amount of them on ebay or AMAZON. They offer collections of different spacer types (male-female, female-female) and length for less money. Regarding the washers: I bought them from AMAZON PROTECH_STORE, “PROTECH Large Polyamidwashers DIN 9021 M3 50 pcs.”, see picture2 for installation. The Acrylic sheets are 3mm thick, color is green, but the chosen color is up to you… The outer dimensions are as the Multicomp PCB. The corner hole positions are marked by using the Multicomp PCB as a hole mask (drill: 3.5mm diameter). The Acrylic sheets are bought from AMAZON as 200x300mm^2 pre-cut parts. I've done the cut to Multicom-PCB dimensions by myself. Maybe that the chosen shop will cut it for you…
After installing the 2 resistors on the joystick board install the washer and spacer as shown on picture2 to get the joystick board to the right level above the RS232 Dsub-9 connectors. Fiddle the pins from the sockets through the holes of J5 (Joystick-Board), then plug the socket into J6. Check their position in the box-header, then solder only one pin of each socket and check again. If everything is ok, solder all pins, then cut off the not needed length of the pins.
Multicomp-PCB: installing the spacer for Acrylic sheets and ADD-On PCB's
Picture3 shows how to install the various spacer/washer to get the right distance for mounting Swiss-Pi- & Joystick-PCB and the Acrylic sheets.
PIO-Expansion PCB: TOP/BOTTOM installation of the PIO-Expansion Socket
Where to install this socket depends on what you want to have most on the TOP side of the Multicomp-PCB: Joysticks on TOP or 2nd PIO-Port. To remove the 40-pin box-header may become a hard job and may damage the through-hole plating ! From my point of view it's of higher value to installed Joystick-PCB on TOP (if the 2nd PIO-PCB is not needed, leave the PIO-Epansion socket uninstalled). In principal the Joystick-Interface is more a multipurpose hardware, because the four analog inputs are voltage-to-pwm converters that transform 0..5V to it's corresponding puls-width. Nothing else the 4 counter in the FPGA do when reading back the thumb-stick position (bandwidth is roughly 45Hz, so most “slow motion” things will work fine). It's a suggestion…, at the end it's up to you.
VHDL Code
Although the code is running without any known issues, I've to bring down the number of warnings. That might cause some minor changes in the VHDL Code, but the general line is defined. The GPIO Bus is a 10-bit 2 port system with one 8-bit port (LOW) and a 2-bit port (HIGH). Single Input/Output programming is possible. Two user-controllable LED's (use a open collector driver) are connected to the header to. They can be used as a feedback indicator. I used them for testing the GPIO-Port - very helpful
]]
DOWNLOADS...
Upload-History:
24.05.2021: Some typo-hunting in the system-manual, updated T80 from REV247 to REV350, updated RND-Gen to suppress 0x0000 & 0xFFFF startup-values. 17.04.2021: Collect all archives in one tar.gz archive. NEW: a expanded system-manual reflecting the now used ZPM3 as the main OS. It's far more configured as in the system18.img that I used as the starting point. All RSX's are adapted to ZPM3. This improves usage within aliases etc. Incl. in the archive is the zpm3_image18.img, that holds a zpm3 along with a cpm3+z3plus drive image. Not included in my archive are all the additional information thta you will find in the original mc-2g-1024k archive due to keep the size below 128MB !. Image S3 to S8 are empty and free for data etc, S9 to S18 are still the Software drives as in system18.img. Finaly: I will now close this project. I've worked nearly 3 years on it and I can say: the system runs as reliable as all other multicomp systems do. I've done a lot of software development on it and it never fails (as long as the developed software was bug-free…). So have fun with it !
Filename
Filesize Last modified multicomp-july2019_all_20210524.tar.gz 119.8 MiB 2021/05/24 07:27










