Minimig Discussion Forum

Discussing the Open Source FPGA Amiga Project
It is currently Fri May 24, 2013 3:13 am

All times are UTC




Post new topic Reply to topic  [ 18 posts ]  Go to page Previous  1, 2
Author Message
 Post subject: Re: TG68 stack problem
PostPosted: Wed Sep 01, 2010 5:00 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1406
Location: .de
petnnw wrote:
I'm going to take some pictures. Where should I post them? Here, or in another thread?

Nice, thanks.
Just upload right here or perhaps in the Minimig General Discussion forum and a new topic like "Info & picture of ported Minimig"(?) would be ok.

_________________
__________________________________________________________
JSR $BED ; will guru-meditation until next morning


Top
 Profile  
 
 Post subject: Re: TG68 stack problem
PostPosted: Fri Sep 03, 2010 4:02 pm 
Offline

Joined: Fri Aug 27, 2010 9:36 am
Posts: 6
boing4000 wrote:
petnnw wrote:
I'm going to take some pictures. Where should I post them? Here, or in another thread?

Nice, thanks.
Just upload right here or perhaps in the Minimig General Discussion forum and a new topic like "Info & picture of ported Minimig"(?) would be ok.


Hi!

Finally I have taken some pictures. Sorry for the very poor quality, I used the cellphone camera, and I'm not a very good photographer =).

As you can see, the board is not very clean (I did not have too much Isopropyl alcohol left to clean it) and it has several patches due to design mistakes.

I designed and built it about two years ago and it was conceived as a "portable" minimig (I named it PalMig =)). The keyboard PCB is still missing because it's boring and I did not have time to design it =). At the moment I'm using an external PS2 keyboard.
The blue PCB is the actual PalMig, the green board is the expansion.


The bottom side:
You can find the 34-pin connector (I put it for ease of debug of the video FPGA and in case I needed to connect different LCD panels), the power on button, the power jack, the S-video, the composite out, the VGA out, a hole for a missing joystick port (unfortunately I made a mistake on the DB-9 port package and I placed them too close... so there was no space for two joystick ports), the audio jack, the mouse and keyboard PS2, the SD holder, the USB connector and the RS232 connector.
Above the 34-pin connector there is the battery holder. The two PCB-to-PCB connectors are for the CPU and memory expansion, respectively. I also put a 4-MBytes SPI Flash memory, to store the FPGA bitstreams and some kickstarts.

The top side:
You may find: the video FPGA (left), the chipset FPGA (right), the 68SEC000 (unfortunately, when I placed the orders at Mouser and Digikey two years ago, the 16MHz version was out of stock. The 10MHz version cannot run at 49.x MHz, but it runs error-free at least up to 28MHz, and with the latest Yaqube's core, it reaches 2.9 Mips@28MHz) and, the AD724. On the right you find the I2S audio DAC with Amiga's original Sallen Key audio filters (which are bypassed when the power LED is off), and a power amplifier (for the headphones or 350mW speakers, which are still not connected). The I2S audio DAC also allows to select the volume (simply using a left or right shift of the audio samples).
On the bottom, there is the keyboard connector and next to it the LPC2368 microcontroller. Unfortuately, the LPC2387 was not stocked, so I had to purchase the 2368 (which has fewer RAM and it lacks the USB host controller - so the USB port is non-operational at the moment).
There is also a MAX1500 battery charger.

The video FPGA acts simply as a LCD controller with flicker fixer and it has 1MB of static ram as framebuffer.

The expansion board consists of two static ram chips, a 16MB 166MHz SDRAM (the 32MB version is not stocked at Digikey. I used the Winbond SDRAM because they are low-power compared to Micron or ISSI. Nonetheless, the signals are routed to support up-to 32MB) and the 500kgates Spartan3E FPGA. At the moment the SDRAM controller is not implemented yet (first I have to get the tg68 working)

I did not use a single 1200-1600kgates Spartan 3E for the whole system because it needed a 6-layer board with fine pitch track/space, which was too expensive.

Regards,

Nicola


Attachments:
File comment: Closeup of the top side of the board.
03092010241.jpg
03092010241.jpg [ 738.27 KiB | Viewed 1089 times ]
File comment: Close up of the bottom side of the board, with the expansion mounted.
03092010239.jpg
03092010239.jpg [ 798.97 KiB | Viewed 1089 times ]
File comment: The bottom side showing the action replay working on the tg68 core.
03092010238.jpg
03092010238.jpg [ 510.7 KiB | Viewed 1089 times ]
Top
 Profile  
 
 Post subject: Re: TG68 stack problem
PostPosted: Fri Sep 03, 2010 4:08 pm 
Offline

Joined: Fri Aug 27, 2010 9:36 am
Posts: 6
three more pictures...


Attachments:
File comment: One of my favourite video games: First Samurai =)
03092010254.jpg
03092010254.jpg [ 564.47 KiB | Viewed 1087 times ]
File comment: Close up of the bottom side, without expansion board.
03092010245.jpg
03092010245.jpg [ 699.63 KiB | Viewed 1087 times ]
File comment: A Hires-Laced Workbench screen. (The colored bands in the lower part of the LCD screen are due to the protective plastic film, which I have not removed yet).
03092010244.jpg
03092010244.jpg [ 529.96 KiB | Viewed 1087 times ]
Top
 Profile  
 
 Post subject: Re: TG68 stack problem
PostPosted: Fri Sep 03, 2010 8:21 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1406
Location: .de
Hi Nicola,

I find this a very interesting work!
Your PalMig seems to be the only multiple FPGA Minimig project arround.
Very nice work too, even if the blue board isnt that clean, who cares as a tecnichian.

The available flicker fixer indeed is nice and recommended using a LCD panel.
Also the additional OSD function and info is a nice thing and quite a cool idea!

I whish you to get the TG68K core to work. In this case you will have 2 cpu working in parallel and if done well, even switchable without reset or guru.
Beside that, the current Minimiv V1 release (YB100818) provide 4kb of cpu cache in the normal FPGA. This will speed-up the processor a lot and maybe run even fastern then the softcore cpu.
Your system would be an interesting test bench :)

_________________
__________________________________________________________
JSR $BED ; will guru-meditation until next morning


Top
 Profile  
 
 Post subject: Re: TG68 stack problem
PostPosted: Wed Sep 08, 2010 11:43 am 
Offline

Joined: Tue May 05, 2009 11:53 am
Posts: 8
Location: France
Nice board anyway ... good job.
Is it a 2 or 4 layers board?
Have you done electric measurement's consumption?

I'm redesigning my memory interface to solve my bug.
I was using DDR memory previously but now I only uses the 200MHz static RAM from ISSI and Intel's flash.
I've merged with the latest minimig core and I'm close to make it work (I think).
If it works, I'll send you some signaltap samples with TG68 and DMA access.


Top
 Profile  
 
 Post subject: Re: TG68 stack problem
PostPosted: Wed Sep 08, 2010 4:27 pm 
Offline

Joined: Fri Aug 27, 2010 9:36 am
Posts: 6
Ragoon wrote:
Nice board anyway ... good job.
Is it a 2 or 4 layers board?
Have you done electric measurement's consumption?

I'm redesigning my memory interface to solve my bug.
I was using DDR memory previously but now I only uses the 200MHz static RAM from ISSI and Intel's flash.
I've merged with the latest minimig core and I'm close to make it work (I think).
If it works, I'll send you some signaltap samples with TG68 and DMA access.


Thank you Ragoon.

The blue board is a 4 layer board, the expansion is a 2 layer board.

The power consumption from the batteries can be measured when the power cable is disconnected using the OSD information (battery voltage*discharging current). I have not the system under my hand now, but if I rembember correctly, it was around 700mA-750mA with the expansion board on. About 650-700mA without the expansion board. Obviously, the current consumption is higher when the battery voltage is lower. I will check this evening.

The 5.7" LCD alone eats almost 500mA... Indeed I can read the power consumption via RS232 and it was something like 200mA without it. With the LCD, the 2500mAh batteries only last for about slightly more than 3 hours.

I hope you can fix the bug, because it seems to me that the cause of the problem is the same on both systems.

Nicola


Top
 Profile  
 
 Post subject: Re: TG68 stack problem
PostPosted: Mon Sep 13, 2010 6:47 pm 
Offline

Joined: Sun Jan 04, 2009 3:48 am
Posts: 80
Hello Nicola,

it looks like the same problem I had with the 8520 : the ICR register gets cleared before being read by the TG68.
The same problem exists in the sprite collision register.
Please trace the CIA's ICR register read accesses with signaltap or equivalent and check that the TG68 reads something different from $00.
With zero being read, no CIA interrupt get serviced (no keyboard, no floppy), the kickstart gets stuck in the white screen.

Anyway, nice board.
I am toying the same idea of having one FPGA for the CPU with some SDRAM and one FPGA for the chipset with some SSRAM and maybe one FPGA for the IOs/configuration :-) ? The Lattice XP2-5 looks good for that.

Regards,

Frederic


Top
 Profile  
 
 Post subject: Re: TG68 stack problem
PostPosted: Fri Sep 17, 2010 10:21 am 
Offline

Joined: Fri Aug 27, 2010 9:36 am
Posts: 6
frenchshark wrote:
Hello Nicola,

it looks like the same problem I had with the 8520 : the ICR register gets cleared before being read by the TG68.
The same problem exists in the sprite collision register.
Please trace the CIA's ICR register read accesses with signaltap or equivalent and check that the TG68 reads something different from $00.
With zero being read, no CIA interrupt get serviced (no keyboard, no floppy), the kickstart gets stuck in the white screen.

Anyway, nice board.
I am toying the same idea of having one FPGA for the CPU with some SDRAM and one FPGA for the chipset with some SSRAM and maybe one FPGA for the IOs/configuration :-) ? The Lattice XP2-5 looks good for that.

Regards,

Frederic


Hi Frederic,

I also tried weeks ago the CIA ICR fix you posted on another thread, but it still does not work. I will try to analyze the tg68 reads. I think that the problem lies on the tg68 bus timings, which do not perfectly match the original 68k.

Btw, I would not suggest to use multiple FPGAs as I did on my board. Indeed I used 2 FPGAs (3 taking the expansion into account) just because I had not enough I/Os with non-BGA packages (and two years ago I didn't want to use BGA packages).

I think that the cost and power consumption are higher with multiple FPGAs. Moreover, with a single (bigger) FPGA, the speed and noise immunity are increased.

I'm planning to build a more compact version with a single Spartan 6 and I will use the reflow oven of my department to solder it.

Nicola


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 18 posts ]  Go to page Previous  1, 2

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Translated by Xaphos © 2007, 2008, 2009 phpBB.fr