{"guid":"be19fbe3-e825-4e67-93f9-a6aeda2e31af","title":"Reverse engineering FPGAs","subtitle":"Dissecting FPGAs from bottom up, extracting schematics and documenting bitstream formats","slug":"34c3-9237-reverse_engineering_fpgas","link":"https://fahrplan.events.ccc.de/congress/2017/Fahrplan/events/9237.html","description":"In this talk I describe the basic makeup of FPGAs and how I reverse engineered the Xilinx 7 Series and Lattice iCE40 Series together with the implications.","original_language":"eng","persons":["MathiasL"],"tags":["34c3","9237","Hardware \u0026 Making"],"view_count":7672,"promoted":false,"date":"2017-12-28T00:00:00.000+01:00","release_date":"2017-12-28T01:00:00.000+01:00","updated_at":"2026-04-15T12:30:06.274+02:00","length":2528,"duration":2528,"thumb_url":"https://static.media.ccc.de/media/congress/2017/9237-hd.jpg","poster_url":"https://static.media.ccc.de/media/congress/2017/9237-hd_preview.jpg","timeline_url":"https://static.media.ccc.de/media/congress/2017/be19fbe3-e825-4e67-93f9-a6aeda2e31af-timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/congress/2017/be19fbe3-e825-4e67-93f9-a6aeda2e31af-thumbnails.vtt","frontend_link":"https://media.ccc.de/v/34c3-9237-reverse_engineering_fpgas","url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_title":"34C3: TUWAT","conference_url":"https://api.media.ccc.de/public/conferences/34c3","related":[{"event_id":4762,"event_guid":"b036385c-ec1a-44e5-ae48-af703ce9b5d3","weight":58},{"event_id":4763,"event_guid":"2ef3b60f-6e5c-4c23-a145-d263685ec13e","weight":107},{"event_id":4764,"event_guid":"da934433-0092-4749-b606-56b65e84214f","weight":57},{"event_id":4766,"event_guid":"19b7e5d7-bba7-46da-afbc-f16d43fe395f","weight":175},{"event_id":4767,"event_guid":"f2ca3661-30c8-476e-9d6b-920bb20b21eb","weight":65},{"event_id":4784,"event_guid":"65a25dfd-56dd-4e87-a910-334e2dc25a9c","weight":113},{"event_id":4790,"event_guid":"edd02e52-28f8-4f3e-8b17-75cffecb6d7f","weight":77},{"event_id":4791,"event_guid":"8d29d28d-a222-4731-bdfc-fde590385cae","weight":67},{"event_id":4794,"event_guid":"a2887b4a-0c9d-4220-a52f-c65c20ae25d7","weight":69},{"event_id":4795,"event_guid":"722ce759-9cde-4e3b-8db5-5a97aa9673d9","weight":108},{"event_id":4803,"event_guid":"23d59026-ab98-4f6c-a46d-0bb3e1788a67","weight":14},{"event_id":4812,"event_guid":"7edaed35-e938-4a13-b21c-aac4bb0ebf94","weight":69},{"event_id":4818,"event_guid":"c02f6777-5e55-46ca-8d60-1810a8d5f3c7","weight":14},{"event_id":4819,"event_guid":"55f921ed-ab90-4553-9903-8658557ac447","weight":73},{"event_id":4821,"event_guid":"aed02b65-9a16-4a42-ac28-2883da680d0a","weight":87},{"event_id":4823,"event_guid":"bf924a39-2860-4e27-8741-b8fa0c010363","weight":68},{"event_id":4826,"event_guid":"16645200-2036-4a3c-a44d-a5ff44ac2991","weight":176},{"event_id":4830,"event_guid":"5cf8c222-47d3-4741-9324-be182b4d0fb8","weight":92},{"event_id":4831,"event_guid":"f068c5df-f969-4206-befb-540326e3d053","weight":66},{"event_id":4832,"event_guid":"275f85de-d612-4440-8755-85dee5912f12","weight":153},{"event_id":4833,"event_guid":"e1a60f7b-6a56-4dce-ab3a-c686fa940aa8","weight":162},{"event_id":4842,"event_guid":"581ccbad-4bbf-47a2-8845-f52278d61061","weight":87},{"event_id":4845,"event_guid":"c21cb389-aba3-4eaa-ba1f-76f966b1686e","weight":127},{"event_id":4852,"event_guid":"77aaf0be-d2a8-4531-be02-c91c19b1ca77","weight":97},{"event_id":4855,"event_guid":"51b586be-500c-436e-b70c-fc433e65c4be","weight":125},{"event_id":4859,"event_guid":"95f6e79b-e6a5-4d93-b4ba-cb70470ed819","weight":61},{"event_id":4860,"event_guid":"f552b4b5-7446-4cc4-836b-0aa3639b994f","weight":118},{"event_id":4866,"event_guid":"117a52b4-f675-49dd-aafe-659c07b6bc9c","weight":102},{"event_id":4909,"event_guid":"03ba9edb-1d3a-4774-9384-7548c0696df7","weight":75},{"event_id":4926,"event_guid":"1e5e3f78-dfbe-4aeb-9565-73c395c9f8fc","weight":59},{"event_id":4929,"event_guid":"8e222759-cd6b-403b-8fe1-3517bf7d2802","weight":83}],"recordings":[{"size":null,"length":null,"mime_type":"application/x-subrip","language":"eng","filename":"DRAFT_34c3-9237-eng-deu-Reverse_engineering_FPGAs.en_DRAFT.srt","state":"todo","folder":"","high_quality":true,"width":null,"height":null,"updated_at":"2022-01-24T21:30:25.311+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/DRAFT_34c3-9237-eng-deu-Reverse_engineering_FPGAs.en_DRAFT.srt","url":"https://api.media.ccc.de/public/recordings/57398","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":255,"length":2528,"mime_type":"video/mp4","language":"eng","filename":"34c3-9237-eng-Reverse_engineering_FPGAs.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2017-12-28T16:26:58.823+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/h264-hd/34c3-9237-eng-Reverse_engineering_FPGAs.mp4","url":"https://api.media.ccc.de/public/recordings/20993","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":256,"length":2528,"mime_type":"video/mp4","language":"deu","filename":"34c3-9237-deu-Reverse_engineering_FPGAs.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2017-12-28T16:27:10.058+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/h264-hd/34c3-9237-deu-Reverse_engineering_FPGAs.mp4","url":"https://api.media.ccc.de/public/recordings/20994","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":349,"length":2528,"mime_type":"video/mp4","language":"eng-deu","filename":"34c3-9237-eng-deu-Reverse_engineering_FPGAs_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2017-12-28T16:27:24.268+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/h264-hd/34c3-9237-eng-deu-Reverse_engineering_FPGAs_hd.mp4","url":"https://api.media.ccc.de/public/recordings/20995","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":135,"length":2528,"mime_type":"video/mp4","language":"eng-deu","filename":"34c3-9237-eng-deu-Reverse_engineering_FPGAs_hd-slides.mp4","state":"new","folder":"slides-h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2017-12-28T17:23:59.105+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/slides-h264-hd/34c3-9237-eng-deu-Reverse_engineering_FPGAs_hd-slides.mp4","url":"https://api.media.ccc.de/public/recordings/21076","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":134,"length":2528,"mime_type":"video/mp4","language":"eng-deu","filename":"34c3-9237-eng-deu-Reverse_engineering_FPGAs_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2017-12-28T20:45:41.648+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/h264-sd/34c3-9237-eng-deu-Reverse_engineering_FPGAs_sd.mp4","url":"https://api.media.ccc.de/public/recordings/21186","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":26,"length":2513,"mime_type":"audio/opus","language":"eng","filename":"34c3-9237-eng-Reverse_engineering_FPGAs.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2017-12-28T20:46:12.964+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/opus/34c3-9237-eng-Reverse_engineering_FPGAs.opus","url":"https://api.media.ccc.de/public/recordings/21187","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":38,"length":2513,"mime_type":"audio/mpeg","language":"eng","filename":"34c3-9237-eng-Reverse_engineering_FPGAs.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2017-12-28T20:48:37.532+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/mp3/34c3-9237-eng-Reverse_engineering_FPGAs.mp3","url":"https://api.media.ccc.de/public/recordings/21191","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":190,"length":2528,"mime_type":"video/webm","language":"eng-deu","filename":"34c3-9237-eng-deu-Reverse_engineering_FPGAs_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2017-12-28T21:01:13.537+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/webm-sd/34c3-9237-eng-deu-Reverse_engineering_FPGAs_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/21213","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":430,"length":2528,"mime_type":"video/webm","language":"eng-deu","filename":"34c3-9237-eng-deu-Reverse_engineering_FPGAs_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2017-12-28T23:08:21.426+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/webm-hd/34c3-9237-eng-deu-Reverse_engineering_FPGAs_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/21317","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"},{"size":48,"length":2528,"mime_type":"video/mp4","language":"eng","filename":"34c3-9237-eng-Reverse_engineering_FPGAs_sd-slides.mp4","state":"new","folder":"slides-h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2018-01-02T15:41:23.919+01:00","recording_url":"https://cdn.media.ccc.de/congress/2017/slides-h264-sd/34c3-9237-eng-Reverse_engineering_FPGAs_sd-slides.mp4","url":"https://api.media.ccc.de/public/recordings/22299","event_url":"https://api.media.ccc.de/public/events/be19fbe3-e825-4e67-93f9-a6aeda2e31af","conference_url":"https://api.media.ccc.de/public/conferences/34c3"}]}