Jump to content
IGNORED

F18A MK2


matthew180

Recommended Posts

Quote

I have also decided to try and support VGA output as well.

Oh man, yes!  You're my hero! 

 

As someone who's entire a/v signal processing setup and main monitor is RGB, I'd always thought I'd be stuck (not that I'm complaining :P) with the original F18A. 

 

It's amazing to hear that the MK2 will support RGB!

 

This is the best news since Sideport SAMS. 

  • Like 4
Link to comment
Share on other sites

Yesterday I literally got up (10am ish), ate some food, and sat down at my computer to work on the MK2.  I got up once more around 6:30pm to eat dinner, and finally we to bed around 1:30am.  Saturday was about the same, and weekdays have been the same except I can't start until I get home from work.  I have pretty much fallen all the way to the bottom of the feature slope.  The MK2 has grown from one PCB to four: the MK2 itself, plus three headers (DVI, VGA, and 3rd-party adapter).  There now has to be at least two bit streams (firmware files) depending on if you are using the VGA or DVI header.

  • Like 7
  • Thanks 2
  • Sad 1
Link to comment
Share on other sites

It's a tough situation when you're the go-to guy and a group wants the results, but at the same time feel for you too. I think people would be just fine if you did a day here and there and a report. I think not hearing progress bums us out though as I'd Rather hear from you regardless of progress. Just hearing that you ate dinner was ok with me. Cool

Because one day it might be the wife we hear from and that would probably not be good.lol

Link to comment
Share on other sites

So in the spirit of more updates (and since there is movement on the MK2), below is a screen shot of the MK2-Rev-K WIP in KiCAD's 3D viewer.  Note all the new parts floating around the edge that need to be placed and fitted.

 

Also of note is that the user switches are gone and will be replaced with a (smaller) Micro-B USB header.  After the original F18A I swore I would never do another board that did not have a USB header on it, yet the MK2 did not have one due to the size and cost of the associated USB chip I would need to use.

 

The main reason for USB would be to provide an easy way for people to do firmware updates without having to use the in-system update programs (which are great, but only support two of the many platforms that the F18A can be used in) or a JTAG programmer (which can be expensive, and the software is a pain in the ass to use).

 

So the USB ICs have always been the show-stopper, until the TinyFPGA project came around.  The guy putting that together has a minimal USB core with enough functionality to be able to load new bit streams into the FPGA's configuration Flash, without needing any dedicated USB ICs!  Big kudos to the TinyFPGA project and a ton of thanks to them for making it open source / open hardware!  Because of this capability, firmware updates and the user settings can be done via the USB connector and a simple program on the user's PC (it is Python code, so it should be mostly cross platform, but I still have to work that part out).  This will also make it easier for people to switch between the VGA and DVI firmware.

 

Also, I will be releasing the all F18A (original and MK2) HDL and PBC files as open source / open hardware, but not until the MK2 is done.  It mostly comes down to time and not wanting to try and manage an open project in the messy state it is in right now.  This was always my intention, I was just not sure when.  Seems like it might be a good time now.

 

 

mk2_rev_k_wip.png

  • Like 12
  • Thanks 4
Link to comment
Share on other sites

1 hour ago, matthew180 said:

Also, I will be releasing the all F18A (original and MK2) HDL and PBC files as open source / open hardware, but not until the MK2 is done

 

This is most excellent news.

 

I am learning FPGA design myself and I've always wanted to create a "TMS9918-ish" chip that is meant to be much more basic.  For example, no GPU, no scrolling, etc. 

 

 

  • Like 1
Link to comment
Share on other sites

48 minutes ago, cbmeeks said:

I am learning FPGA design myself and I've always wanted to create a "TMS9918-ish" chip that is meant to be much more basic.  For example, no GPU, no scrolling, etc.

There are already 9918A-only cores out there, have been since before I started the F18A (2010 and before).  I would not recommend starting with something like the F18A HDL.  The F18A requires 10ns combinatorial logic due to the 100MHz internal clock, which means it does things in ways that you would not have to if you stick with original functionality.  You can get away with a lot more sins at slower speeds.

  • Like 1
Link to comment
Share on other sites

Update: Testing was going good until I put the MK2 into my 99/4A, and it does not work.  This is very frustrating since it is running the same HDL as the original F18A (V1.9) and also because the MK2 works in the ColecoVision and MSX1 computer (the one I have anyway).  I'm not even sure where to begin troubleshooting this one, and most of the problems I have start this way, but this one is taking longer to figure out.

 

Other testing and fixes are mostly working.  My voltage supervisor seems to be too aggressive even though it is watching the 5V power for a dip below 3.4V.  Seems there are a lot of crappy power supplies out there and I will need to switch to watching the 3.3V regulator for a dip below 3.0V.  I hope putting the supervisor on the regulated side will help start-up when the source power supplies are being crappy.  The whole purpose of the voltage supervisor is to provide a solution to the TMDS back-feed power problem, which I cannot fix "correctly" due to board-space restrictions, and because I have decided to over-load the TMDS lines to support VGA.  The power supervisor seems to be working as expected, so at least that is good.

 

I measured the current use of the MK2, it is around 150mA when it is powering up (probably due to loading the bit stream from flash), then settles in around 108mA continuous; so at least power-use should not be an issue with the MK2. The original 9918A is rated at 1.3W Maximum Continuous Power, which at 5V is 260mA.

 

So the TODO list is looking like this now:

 

* Fix the "not working in the 99/4A" problem.

* Write HDL to test the SRAM.

* Integrate USB-port HDL from the TinyFPA project and test.

* Test with the 3.0V voltage supervisor on the 3.3V power rail (need to order the parts).

* Update schematic with changes based on actual prototype testing.

* Update PCB routing based on schematic changes and finish placing new parts.

* Update DVI header PCB, make VGA header schematic and PCB, make 3rd Party Connector header schematic and PCB.

* Order new PCB prototypes (rev K) and test.

 

  • Like 8
  • Thanks 2
Link to comment
Share on other sites

Yup.. this is my day over and over but in a different scale. My issue is in assembly..

I'm using the SAMs example and no one mentioned anything about interrupts not being allowed yadada.... not just that, but hosts of problems arise just from implementing a feature..

Yours on a grand scale but, hopefully it will end up with something that makes sense but didn't at the time and then it all comes together.

 

 

 

 

Link to comment
Share on other sites

I'm still having problems getting things working in the 99/4A.  I had to resort to moving off-board so I could try different level-shifters, and in the process noticed that with 300mm (about 12 inches) of ribbon cable the MK2 works with the 99/4A (see the photo).  So... 300mm of cable represents about 1ns of delay, which does not really affect anything, or some RC (resistance and capacitance) to slow-down the transitions (most likely).

 

Unfortunately since the MK2 works with the test harness, it means I can't test the level-shifters externally...  Which means I have to make my best guess and do another board rev and hope I'm right.  For lots of reasons I won't bother explaining here, for the MK2 I wanted to have a real dual-voltage level-shifter, but I think that is causing the problem, although I don't know why.  Even though the level-shifters are putting out the 5V signals,  they are still implemented in CMOS using FETs and might be causing the issue with the 74LS era logic that is implemented with bipolar BJTs (transistors).  Logic-family compatibility is more than just voltage.

 

Anyway, the original F18A used a 3.3V level-shifter with 5V tolerant I/O, and the datasheet for that part specifically says it is designed to interface with "TTL" logic.  So I'm going to go back to that manufacturer (OnSemi) and series (LCX) of ICs for the FPGA interfacing.  The reason for level-shifting to begin with is that almost all FPGAs (and most microcontrollers) these days only support up to 3.3V I/O, and our old 74LS-based computers are 5V devices.  If the FPGA's inputs are not protected then they will get blown sooner than later.

 

If there is anything good out of this it is that I am able to eliminate three level-shifting ICs due to device packaging available in the OnSemi LCX family, and reducing the BOM is always a good thing (tm).

 

I'm making the schematic changes and working on updating the board routing, with the hope of getting the new Rev-K boards ordered this weekend.

 

I thought the pixel-pattern image was interesting, but it was supposed to be the ColecoVision title screen...

 

 

interesting_but_wrong.jpg

works_with_cable.jpg

  • Like 11
  • Thanks 3
Link to comment
Share on other sites

  • 2 weeks later...

Finally, "0 Unrouted!"  All changes fitted and routed.  I just have to finish the header boards and I can get Rev-K boards ordered.  While I'm waiting for those to come in, I can try to make some headway on the HDL.  I still have to test the SRAM...  I keep forgetting that bit.

 

unrouted_0.png

mk2_rev_k.png

mk2_rev_k_3d.png

  • Like 14
  • Thanks 3
Link to comment
Share on other sites

I haven't honestly read all 25 pages, but my understanding is there is a hiccup getting some parts?

 

That's okay, as others have said take your time. 

 

I'd like to get at least one more F18A for my other console, and perhaps one more to have as a backup.   Thanks for doing these - one of the most important upgrades for the TI out there!  ?

Link to comment
Share on other sites

1 hour ago, WhataKowinkydink said:

I haven't honestly read all 25 pages, but my understanding is there is a hiccup getting some parts?

Usually it is easier to read a thread backwards until you find what you are looking for.

 

The problem was with using anything covered by the HDMI patents without a license; anyone or any project doing so is risking a lawsuit.  While it is frustrating to see all kinds of hardware projects swirling around out in the wild, all using HDMI connectors and such, without any apparent legal problems, I am personally not willing to risk it (and I'm not to keen on breaking the law either).  The minimum HDMI licensing is too expensive ($5000/yr) for the volume vs. time-frames I am dealing with.

 

I needed to get rid of the HDMI connector, terminology, and anything directly related to what is covered in the license.  That was accomplished by using a generic FPC connector on the MK2 itself, and a DVI connector on a header board.  Not the ideal solution, since it means more cost and confusion, but it is a legal solution.

 

  • Thanks 1
Link to comment
Share on other sites

1 hour ago, hloberg said:

I'm a little confused, did you say you were making a vga & a HDMI? Or did i read an earlier post wrong.

DVI signaling and connector (on the header board), which can be passively adapted (single cable) to HDMI by the user.  I am also attempting to provide VGA, which will require a firmware change and a different header.

 

test2.thumb.jpg.e1848c38b3c3ec57d9567fbf0858298e.jpg

  • Like 6
  • Thanks 5
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...