Cheap Virtex 5 FPGA Board (actually PrimeSense DevKit better known as Kinect) - Page 1
Forum section: electronics / general

author: tinhead
author_rank: Super Contributor
timestamp: January 09, 2013, 04:51:54 pm
content: Two months or so ago I was looking for a cheap Virtex 4/5 board on ebay. However not a dedicated dev board(as they simply too expensive or too specific), but something what can be as well custom used.The last time i got a real nice Wintegra Board with gbit LAN, so i hoped to find something similar.What i found is even better : check this item ebay 281032773568On the first look was already ok, not too much "custom things", simply FPGA and only few extra things.I've contacted the seller and got some other pictures, on one of them was company logo "PrimeSense"and board name "Chip Development Board". Who is Prime Sense ? Well that's the company behind Xbox Kinect.So i bought this board and contacted immediately Jeremie Kletzkine from Prime Sense. He is Business Development Managerso i thought it might be the right person ... well, unfortunately not. What he said:"we're not sharing information about our core technology"Well Jeremy, i'm happy you not sharing any information about your famous technology. Wondering only why on Prime Sense website (or any social network, heh) your company made so much "talk" about "open source, open this, open ni" and all theother crap marketing things ... Or maybe simply you the worng person to answer product relevant questions ? Who cares.Anyway, as soon i got my board i've checked the both on-board Flash memories ... and gues what, i can read backyour famous design from Config ROM and of course parallel Flash as well.Anyway ... you all might ask now why i'm taling about this board ? Well, maybe some of you wish to try to play withKinect "v1" - in the full specs version i think. All you need will be for sure Cam conected over SERDES port, micand IR sensor? No idea, this kind of functionaity is for me only "an extra", but yeah, informations about drivers,software etc can be found here:http://groups.google.com/group/openni-dev/tree/browse_frm/thread/5db551fb475432e?_done=%2Fgroup%2Fopenni-dev%2Fbrowse_frm%2Fthread%2F5db551fb475432e%3Ffwc%3D1%26&fwc=1or simply google for "ID 1D27 PID 0200"For all of you who wish simply a cheap but powerful Xilinx Virtex 5 Dev Board :i've reversed the complete PCB and made a schematic- see attached. I spend on that 3 days, i hope you enjoy it.I've additionaly made backup of the Prime Sense original (Kinect) design (i case you wish to play with that a bit) andcreated master pin config file (.ucf) for your ISE Projects.Having the schematic and ucf file you can access now to :- Virtex 5 FPGA ( XC5VLX50 ) - tht biggest one you can use with the free ISE web edition.- 5 green, 5 yellow and 1 blue LEDs- 32 DIP switches (or simply replace them by 4 push buttons)- 50 free I/O pins wired to FPC connector (perfect for e.g. Display)- 38 free I/O pins wired to ( no idea what model this is) 68 pin connector. Every second pin is GND so perfect slow/middlespeed for I/O operations- 18 free I/O pins on IDT header (2.54mm pitch)- 7 free I/O pins on "spare" PS-1000 chip JTAG (see schematic for details)- 3 x 34 free high speed I/Os over MICTOR header (perfect for extra memory or debug)- 1 x 36 free high speed I/Os over MICTOR header (perfect for extra memory or debug)- 2 x 2.56Gbit Full dupley SERDES port - for everything where you need good speed (or over longer distance).I've attached as well some pictures, red marked is the "useles are" - all these parts can be removed when youdon't need the Kinect functionality. Yellow marked area is indirect usefull - you need to wire then one of the 4 MICTORports with the one MICTOR port in "yellow area" and remove the red area parts - then you will get as wellUSB over Cypress MoBL chip.Everything else, as described above, is directly accesible and can be used as Virtex 5 dev board.I've attached only reduced size PDF schematic, if you need bigger version (with nets) or the Altium files send me simply PM.EDIT: updated schematics, config and nor dump and master ucf on my onedrive:http://1drv.ms/1BUD6Nv

author: marshallh
author_rank: Unknown
timestamp: January 09, 2013, 05:26:02 pm
content: Nice board... too bad about the fpga brand... hehe

author: tinhead
author_rank: Super Contributor
timestamp: January 09, 2013, 06:16:23 pm
content: heh, but you know what, i don't like the Xilinx tools (ISE), it makes me crazy each time to work with them.In compare to them, to work with Altera Quartus is like a "holidays" ... but sometimes you have no choice.

author: PA0PBZ
author_rank: Super Contributor
timestamp: January 09, 2013, 09:08:22 pm
content: Price just went up from $115 to $200(Or I need new glasses...)

author: M. András
author_rank: Super Contributor
timestamp: January 09, 2013, 09:42:29 pm
content: drop a mail to the guy with the configrom dump?and ask again for documentation?

author: tinhead
author_rank: Super Contributor
timestamp: January 09, 2013, 10:10:27 pm
content: Quote from: M. András on January 09, 2013, 09:42:29 pmyeah, i will for now let google engine do the work ... sooner or later he will find his name (here).But even if, i don't think they will provide anything extra. The point is, these boards (afaik) has been designedbefore they released PS1080 chip (which is used in Kinect). The IP (which is now implemented in PS1080 ASIC)is on these ebay boards partially in PS1000 chip and partially in FPGA (or measuring the power consumption even full in FPGA).Sure, there is no risk that someone will take the dump and sell "own" Kinect things, simply because of Virtex 5 price.Quote from: tinhead on January 09, 2013, 04:51:54 pmyeah, i must be blind. This is R-HI-008068-2C receptacle, and the plug is R-HI-008068-2.Exact the same type of connector pair as on Digilent Genesys Virtex 5 board, however different pinout so DigilentVmod modules are not compatible.

author: M. András
author_rank: Super Contributor
timestamp: January 09, 2013, 11:17:23 pm
content: wow the price of that single fpga alone is much, not even the board etc wonder the origin of that lot on ebay for the price. (btw can you suggest books for learning whdl/verilog from ground up? i put my head to learn programming by myself and after that should be more challenge in the digital world if you know what i mean)

author: tinhead
author_rank: Super Contributor
timestamp: January 09, 2013, 11:44:30 pm
content: Quote from: PA0PBZ on January 09, 2013, 09:08:22 pmehm yeah ... you right.I did notified the seller about this thread and the schematics i made, so i assume this is his reaction on the fact that now thisis not just "unknown PCB with FPGA - for chip recovery" but a more or less full documented Virtex 5 dev board.It was not my intention to rise the price, but to share my findings with others. On the other side i can fully understandthe seller, the cheapest Virtex 5 board (Digilent Genesys) costs more than twice the (current) price of this board - and thisonly when you a student.Right, Digilent Genesys does have memory and Ethernet, but knowing how most poeple using dev kitsi'm sure missing Ethernet is not an issue.- EDIT - i shoud not compare to Digilent Genesys as they using Virtex 5 LXTand not LX, more directly comparable is Xilinx ML501 board End_of EDIT.Memory is a different story, for sure the BRAM on Virtex 5 can be used for many things, but additional SRAM/SDRAM is alwaysgood and easy to use thing. I think i will design small addon board, probably with NoBL SRAM (as i have few of them here),have to check where to get cheap MICTOR connector (or something size-compatible).Btw, did you saw the "make offer" button? I made use of that as well.

author: tinhead
author_rank: Super Contributor
timestamp: January 10, 2013, 12:01:21 am
content: Quote from: M. András on January 09, 2013, 11:17:23 pmuff, no idea how much money you wish to spend for books, but these two i liked:i remember this one was good for beginners, i had the first edition of it:http://www.amazon.com/Circuit-Design-Simulation-Volnei-Pedroni/dp/0262014335/but when look on the comments the new edition seems to be more complex (but "hopefull" up to date)and here another one which is more examples driven, a good source as well:http://www.amazon.com/FPGA-Prototyping-VHDL-Examples-Spartan-3/dp/0470185317/

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: January 10, 2013, 12:49:30 am
content: If the OP's listed country is genuine, I wonder if the seller has broken export regs by sending this board to him....

author: tinhead
author_rank: Super Contributor
timestamp: January 10, 2013, 02:08:42 am
content: Quote from: mikeselectricstuff on January 10, 2013, 12:49:30 amhehe Mike, I'm a kraut so no issues at all

author: tinhead
author_rank: Super Contributor
timestamp: January 10, 2013, 06:36:15 pm
content: in another forum i got an question "how to add memory without paying lot of money for MICTOR plug/receptacle".Well, sure , there are some cheap MICTOR plugs on ebay, they costs 7usd or so. I've asked some chinesesuppliers, the best was 5usd for plug and 5 usd for receptacle. This is indeed (and that's already the cheapest option)lot of money, but i think for someone who wish to add fast and a lot of memory this will be the only option.I will do it very simple, not even NoBL SRAM. I will use SDRAM, 256Mbit or 512MBit chips.I can simply solder them on a small PCB (with or wthout tracks, simply some wires are good enough here)and place between two MICTORs like this:or this.With 133MHz clock i don't see any problems here. Possible chips are e.g. MT48LC64M8A2, MT48LC32M8A2, IS42S83200C etc.

author: M. András
author_rank: Super Contributor
timestamp: January 10, 2013, 08:55:43 pm
content: Quote from: tinhead on January 10, 2013, 12:01:21 amthank you. the second is a bit more pricy but i guess its worth it, for things i can have on my desk etc i like to spend money if its worth it. and every learning material which i can benefit from later on i spare no expense. for things which are digital format i like the free version of them.

author: tinhead
author_rank: Super Contributor
timestamp: January 11, 2013, 12:57:09 am
content: Quote from: M. András on January 10, 2013, 08:55:43 pmehm yeah, you will find these books in digital format, that's for sure. However the only "free" version i ever saw was an illegal one

author: M. András
author_rank: Super Contributor
timestamp: January 11, 2013, 05:47:49 am
content: Quote from: tinhead on January 11, 2013, 12:57:09 amnah, i hate to read thousands of pages on a monitor, The C++ Programming Language "special edition" and The C Programming Language 2nd edition sits on my desk in hungarian translation im not sure it was the best choice instead the original english, but thats for sure Stroustrup's books are heavy both of them. these are worth it

author: tinhead
author_rank: Super Contributor
timestamp: January 23, 2013, 08:10:12 pm
content: Quote from: PA0PBZ on January 09, 2013, 09:08:22 pm... and got down again by 30%In the meantime i found solution for the R-HI-008068-2C receptacle. There are a lot of old SCSI/RAID controllers on ebay,i found an IBM Serveraid for 1EUR. The LVD SE receptacle is exact what i needed.Quote from: tinhead on January 09, 2013, 10:10:27 pm

author: olsenn
author_rank: Frequent Contributor
timestamp: January 23, 2013, 09:09:41 pm
content: Vertex is the higher end Xilinx silicon, but you can get a Spartan-6 (45k gate vs 50k) Atlus dev board from Digilent for the same price... I'm not sure which is better. I just wish FPGA's weren't all in BGA or other very high pin count packages... although I see why it's neccessary

author: tinhead
author_rank: Super Contributor
timestamp: January 23, 2013, 11:15:44 pm
content: Quote from: olsenn on January 23, 2013, 09:09:41 pmand that's exact the pointQuote from: olsenn on January 23, 2013, 09:09:41 pmnot exact the same price. As i started this thread the ebay price was 115$, which was fair for unknown board with a FPGA for recovery. With the schematic i made the game changed, the price as well.The Spartan-6 price you talking about is academic price, so not everybody can buy it that "cheap". And even if, the Virtexboard is (right now) anyway cheaper.Quote from: olsenn on January 23, 2013, 09:09:41 pmif i would believe Xilinx marketing i would say there is no speed difference between Spartan 6 and Virtex 5 (Microblaze test results),but a simply look into datasheets tells us what's the real performance is - DSP size 1:0 for Virtex, DSP speed 2:0 for Virtex, i/o speed 3:0 for virtex, PLL 4:0 for Virtex, BRAM speed 5:0 for Virtex, etc.If the silicon would be "not worth money" ( ok, i don't believe that the silicon itself it worth, but we have no choice here, FPGAs are not really cheap - not a silicon nor PCB needs) the next cheapest Virtex 5 board would not costs ~1k USD, e.g.http://www.xilinx.com/products/boards-and-kits/HW-V5-ML501-UNI-G.htmQuote from: olsenn on January 23, 2013, 09:09:41 pmi see this a bit different (and btw, Lattice MachXO2 is available in QFN32 package as well, not small enough?then use Actel Igloo Nano).If i have a need to design my own FPGA loaded PCB, one with controlled impedance interconnectivity, then i have noissues at all to use BGA chips.If i don't need (complettly) own board, then i can still use bare board/addon board. However it is important to check what i really need - definitely lot of i/o, differential i/o, prefered none of displays/led's/buttins/switches overhead, no ethernet (i simply don't like/care about any microblaze demo designs using trial IP. who is really using them in real designs? nobody), no usb (again, no IP for USB), no DDR2/3 - SDRAM or SRAM are good enough for 99% of all designs (easier to implement from any point of view), small size overall would be sometime nices and well. And yeah - avoid cheap dual layer boards, they only ok when you have no i/o.There are some cheap bare boards on ebay, most of them made in china. So what's wrong with them? Ehm , yeah, LT1117 (i would be happy to see real LT1117, most of them are what so ever crap versions) everywhere. A good switching power supply for FPGA is must-have, everything else is simply useless (or good enough for one or max. two blinking LEDs - if you use more, who knows what the FPGA will do ... ).Avoid useless china crap like this item 261030262669. They TOO EXPENSIVE and really bad designed, simply crap.This item 261127485353 or this one 251194080650 could be better - but this lt1117 crap on bottom side ... firstthing to get removed from PCB. I don't like the price as well, but yeah that's ebay.If you don't like ebay - there are a lot good bare boards, like Zefant, GoDIL (from OHO Elektronik), etc.I love these here from HuMANDATA:http://www.hdl.co.jp/en/index.phpThey from Japan, good documented, with license free usb jtag solution (with sources), in lot of feature/speed/fpga type combinations. Sure, they not cheap, but cheaper as an e.g. Digilent Virtex 5 board which is anyway overloaded with uselesscrap (without lot of money or time useable only with Microblaze demo).And the board from topic? Well, i would not recommend it if i would not known that it's worth money.

author: tja
author_rank: Contributor
timestamp: March 10, 2013, 05:20:44 pm
content: Would you like to share the techniques you used to reverse engineer the board and create the .ucf file?I'm trying to reverse engineer a spartan-6 board and could do with some ideas. I have tried metering out the connections, but for an FG484 part, I just don't think it is a practical approach.

author: tinhead
author_rank: Super Contributor
timestamp: March 10, 2013, 05:56:32 pm
content: this is actually very simple, but you need to spend "some" time on it.First of all you need a JTAG cable, in your case Xilinx Platform Cable.Then of course you need a good software, my fav. app is Universal Scan from Ricreations Inc.:http://ricreations.com/JTAG-Software-Downloads.htmYou can use as well the less known, but good as well, TopJTAG Probehttp://www.topjtag.com/probe/The only disadvantage is that TopJTAG probe can't word with Xilinx USB cables, you nwill need to use Altera, ARM, Digilentor what so ever (or Xilinx LPT cable) jtag cable.To reverse boards with design loaded:- connect JTAG cable to board- power up board- run UniversalScan- add jtag cable, add device (you will need bsdl files for the Spartan 6)- enable scan to watch blinking pins.This might be usefull to see where clocks are coming from, which i/o pins are used by other chips (in principle when they changin status then something or the design itself is accessing pin)To reverse boards without design loaded:- connect JTAG cable to board- power up board- run UniversalScan- add jtag cable, add device (you will need bsdl files for the Spartan 6)- enable scan- apply test signal to every pin on the boardthis is the real fun. The level should not be higher than i/o voltage of specific port,you need to check it first. I'm using for this 1kHz signal, with low level 0.5V and high level 2-3.3V.For some driving pins it is sometimes necessary to apply DC, you will see.- watch if any pin is changing color (in universal scan). Btw, when you click on empty space and them fpga (scan need to be alreadyenabled) then the universalscan will hide all pins - only new activ pins will popup.You can of course use intest/extest, switches and LEDs in universalscan - simply check their website, there are a lot of videos.The procedure above works good for single chip boards, when you have more FPGAs and/or other JTAG capable chips you can of course scan with multiple jtag cables (when all these devices not on same chain) or directly in universalscan (when they on same chain and when you loaded for them bsdl files).For multi devices boards you can of course use tools likehttp://nsa.unaligned.org/jrev.php

author: tja
author_rank: Contributor
timestamp: March 10, 2013, 10:29:13 pm
content: Cheers tinman, that is very helpful indeed, I'll give that technique a try.Universal scan looks good, but it is not cheap! :-(

author: tinhead
author_rank: Super Contributor
timestamp: March 10, 2013, 11:15:54 pm
content: Quote from: tja on March 10, 2013, 10:29:13 pmright, but you can request 14 day trial license. It is not that you need this more than once.

author: alexeygor
author_rank: Newbie
timestamp: September 14, 2013, 04:52:44 pm
content: I've got one of those boards and trying to figure out how to power it on at least..I'm trying to establish a JTAG communication with the board with no success(geting a message that there is no reference voltageon the JTAG..) so I checked the pins on the JTAG header and there's really no voltage at pin 2..Checked the schematics and saw the two leds and push buttons WL1,WL2 and SW1,SW2.When I connect 5v to the 5v jack, I'm getting the WL2 led glowing red and that's all, WL1 is off..When I'm trying to press SW1 nothing happens..Any ideas what can it be or maybe I'm doing something wrong?

author: tinhead
author_rank: Super Contributor
timestamp: September 14, 2013, 06:39:21 pm
content: Hi Alexey,shit, i completly forgot, i will first respond to your PMs and then try to reply to your question here .. brb

author: tinhead
author_rank: Super Contributor
timestamp: September 14, 2013, 07:02:56 pm
content: Quote from: alexeygor on September 14, 2013, 04:52:44 pmmake a picture of your board, from top and bottom, but only from the power supply part (so from the 5V jack to the "Prime Sense Ltd" text). Another user reported board with some missing parts, so it was not powering as well.

author: tinhead
author_rank: Super Contributor
timestamp: September 14, 2013, 07:12:22 pm
content: Quote from: alexeygor on September 14, 2013, 04:52:44 pmsure, because not powered onQuote from: alexeygor on September 14, 2013, 04:52:44 pmnormally, when SW3 (the switch near FPGA JTAG header) is set to bottom position (so 1/2), the design will be not loaded (if there is any of course, that must not be the case). Only WL1/WL2 will be the whole time on, no matter if FPGA powered on or off. So the only status is to check current consumption, when off it will be something 20mA, when on something between 200mA and 2A (that depends on design and populated parts). When the SW3 is in position 2/3, then design wil be loaded. The default Prime Sense design will ebale D24 (the blue one near 5V jack) and some of the D14 to D23 (between PS1000 JTAG and CN1).However, on your boar we need first to solve the WL1, it should be on as well the whole time, so shot the pictures pls.

author: alexeygor
author_rank: Newbie
timestamp: September 14, 2013, 09:19:24 pm
content: Thanks a lot for your help!Attached the top and bottom photos of the power supply part of it..Do you know also the values for C104(Under the FPGA..), C112, C175, C182?

author: tinhead
author_rank: Super Contributor
timestamp: September 14, 2013, 09:46:54 pm
content: Quote from: alexeygor on September 14, 2013, 09:19:24 pmthey all decoupling (except C175)C104 - 270nFC112 - 10uF (same as C117)C175 - 2.2uFC182 - 4.7nFthe missed parts on your pictures areC25 - 100nF decoupling for U7 (single gate, NL17SZ86)R32 - 680R

author: tinhead
author_rank: Super Contributor
timestamp: September 14, 2013, 10:05:15 pm
content: Quote from: tinhead on September 14, 2013, 07:12:22 pmthe missing R32 is for WL1, so it should in principle work even without that resistor.When on, the first MAX IC should provide 1V (on C6/C4), the second MSX IC 3.3V (on C5/C7)Your U6 didn't look "nice", it should produce 12V (on TPS4, always avilable).On TPS1 there should be 3.3V when on.On TPS5 (near FPGA) you should have 2.5V when on.On bottom side, near FPGA JTAG, on C126 you should measure 1.8VThis are the important voltages, everything else is less important (as for the PS1000).Btw. in my email i saidR24=11.01kbut that was wrong, it is of course 1.1k. The R25 remains 7.5k

author: tinhead
author_rank: Super Contributor
timestamp: January 23, 2014, 03:54:05 pm
content: for those who looking for cheap MICTOR connector source (to e.g. attach some memory to these boards), i found some on ebay 350563842869.

author: xmicron
author_rank: Newbie
timestamp: August 25, 2014, 08:20:35 am
content: Hi there,Thanks for your help on this board.(tinhead)I received this board today and I am missing 2 parts.If you can help it would be much appreciated.C3 cap near the 5V adapter andD10 diode in the back of the FPGAThanks,Frank

author: tinhead
author_rank: Super Contributor
timestamp: August 25, 2014, 12:45:13 pm
content: Quote from: xmicron on August 25, 2014, 08:20:35 amFrank,i've posted right now new schematic, underhttp://1drv.ms/1BUD6NvThere is now the whole power section included, as well some corrections to "FPGA", "I/O" and "other parts" sheets.The only sheet i have't (yet?, i don't know, i don't need it) really finalized is the "PS1000". I did fixed power supplyand broken/missing nets, but still lot of analog parts not reversed (but they actually only necessary for Kinect operation).So from dev board point of view everything reversed (i think).

author: xmicron
author_rank: Newbie
timestamp: August 25, 2014, 02:12:43 pm
content: Great job I must say!Thanks for sharing.I think I can find now anything that is missing.I haven't yet powered up the board and any 5V voltage adapter that I tested (about 20!) none of them seam to have the correct barrel to fit the 5V DC jack!!!Have you any idea?Also can you attach the ucf file that you use?Best regards,Frank

author: tinhead
author_rank: Super Contributor
timestamp: August 25, 2014, 04:30:36 pm
content: Quote from: xmicron on August 25, 2014, 02:12:43 pmno idea, the first one i tested was okQuote from: xmicron on August 25, 2014, 02:12:43 pmit was on the first page (master pinout.zip or so), but i did uploaded the latest version on onedrive and removed it from the thread.

author: xmicron
author_rank: Newbie
timestamp: August 25, 2014, 07:20:27 pm
content: Many thanks,Regards,Frank