If MikaTech was a bad company, you could find tons of bad reputations about its service on the internet over the 28 years history
So, the answer is YES! We are good people.Why choose Mikatech, please click here to find out
About MikaTech
Time went fast, from the day we did our first 8051 MCU reverse engineering project in 1998, to the day we set up our million dollar reverse engineering lab in 2012, 14 years went by. Now we start our new business of embedded visual system development, hope we can serve another 10 years.
Peter Lee
Co-Founder & CEO

There are several types of programmable logic available. Older versions like the programmable array logic (PAL) such as the PAL20R8, the generic array logic (GAL) such as the GAL22v10, the programmable logic device (PLD) such as the 22V10, the simple programmable logic device (SPLD) such as the 20V8 have been around for quite some time.
Monolithic Memories Inc. (MMI) created the first commercial PAL (Programmable Array Logic) fuse-based one-time programmable SPLD in 1978. Before AMD’s acquisition in 1987, MMI launched four core PLD product lines: standard fuse PALs, high-speed AmPAL, UV-erasable PALC CMOS PALs, and mask-programmed HAL hard array logic. All devices use the programmable AND / fixed OR array architecture for sum-of-products digital logic implementation. This document enumerates all standard mass-production base model numbers designed and manufactured by MMI. 1. 20-Pin Standard Fuse PAL Family Combinatorial PAL Devices PAL10H8, PAL10L8, PAL10P8 PAL12H6, PAL12L6, PAL12P6 PAL14H4, PAL14L4, PAL14P4 PAL16C1 PAL16H2, PAL16L2, PAL16P2 PAL16H4, PAL16L4, PAL16P4 PAL16H6, PAL16L6, PAL16P6 PAL16H8, PAL16L8, PAL16P8 Registered Synchronous PAL Devices PAL16R4, PAL16R6, PAL16R8 PAL16RP4, PAL16RP6, PAL16RP8 XOR Enhanced PAL Devices PAL16X4, PAL16X6, PAL16X8 2. 24-Pin Standard Fuse PAL Family Combinatorial 24-Pin PALs PAL18H4, PAL18L4, PAL18P4 PAL20C1 PAL20H2, PAL20L2, PAL20P2 PAL20L8, PAL20S10 PAL22V10 (Fuse-based original 24-pin variable macrocell PAL) Registered 24-Pin PALs PAL20R4, PAL20R6, PAL20R8 XOR 24-Pin PALs PAL20X4, PAL20X6, PAL20X8 Wide-Bus High-Density PALs PAL32R16, PAL32X16 3. AmPAL High-Speed Advanced PAL Series AmPAL16P8 AmPAL20L10 AmPAL22P10 AmPAL22XP1 4. PALC UV-Erasable CMOS PAL PALC22V10 (UV windowed EPROM-style erasable PAL, MMI’s only erasable pre-acquisition PLD) 5. HAL Mask-Programmed Hard Array Logic (Factory Custom PLDs) HAL10H8, HAL12H6, HAL14H4 HAL16C1, HAL16H2, HAL16H8, HAL16L2, HAL16L8 HAL18L4, HAL20L2, HAL20L8, HAL20L10
The complex programmable logic device (CPLD) such as the XC2C32A from Xilinx, and the field programmable gate array (FPGA) such as the XC3S50 from Xilinx are some of the newer versions of programmable logic that are a result of improvements to the original types of devices.
These types of devices are available from several manufacturers such as Texas Instruments, Cypress Semiconductor, Atmel, Lattice Semi, Altera, Actel, and Xilinx. Some of these suppliers no longer manufacture these devices themselves but have sold the rights to Rochester Electronics who manufactures them with the same part numbers and logos while some like Lattice still offer GAL devices in addition to newer CPLDs and FPGAs.

In addition today’s FPGAs usually get other features such as built in multipliers, dedicated block ram, and can generally handle more interface standards (such as LVDS). Most FPGA devices need a separate device to program them (the exception to this is Actel and the Spartan 3AN series from Xilinx). This is due to the fact that most FPGAs are SRAM based devices and when power goes out, the program is lost. The FPGA architecture is structured similar to the pictures below:


As you can see the Xilinx device is broken out in to I/O Blocks, programmable logic arrays (PLA), and the advanced interconnect matrix (AIM). Programming is done via the JTAG pins on the device.
The PLA is part of the function block. As you can see signals are routed from the I/O Blocks to the function block then to the AIM and vice-versa. From the picture you can see small blocks labeled MC1 to MC16. These are macro cells.
The PAL, GAL, and PLD devices have an architecture as shown below.

A selection guide for Xilinx CoolRunner II devices is shown below and the PDF is attached if the image is too fuzzy for you.
To get an idea of what other devices are out there here are some links to get you started:

All the mainstream suppliers (Xilinx, Altera, Atmel, and Actel) have free tools. Some need a license (Actel and Atmel) that limits you to a time frame for the tools to work while others are not time based and work forever once you have registered (Xilinx and Altera).
As I use Xilinx that is the tool set that we will cover. The FREE Xilinx tool set is called WebPack and will allow you to design with most of the parts from Xilinx. This is a complete front to back tool that includes verification capability and two simulators (one from Xilinx and one from ModelSim).
Most of the tools look similar to this. This is Xilinxs ISE tool that you get when you down load WebPack. Here you can write your code and manage your project. For those that don't want to write code they can generate a schematic from with in the tool as shown below.
All the mainstream suppliers (Xilinx, Altera, Atmel, and Actel) have free tools. Some need a license (Actel and Atmel) that limits you to a time frame for the tools to work while others are not time based and work forever once you have registered (Xilinx and Altera).
Now for one of the easiest and hardest fib ASIC modification wafer questions to answer; what language do I use if any at all? This question alone has been the source of some heated arguments amongst engineers so I will talk a bit about three options.Schematic entry. Possibly the least difficult if one has experience with logic design at the gate level. Most tools have all the gates in the component library. The draw back is that with a snaileye schematic you have to specify and place each gate unless you have built functions and have saved them. With coding, you can describe how you want the logic to operate and not have to explicitly call out each gate. This is one of the benefits of coding with a hardware description language or HDL.
VHDL and Verilog are programming focused ion beam languages used to describe hardware type logic. Both are high level languages like C and C++ but do allow one to code a logic function at a very basic (i.e. gate level) level.
Here are some examples of an AND Gate using VHDL and Verilog in the attached maker together club PDF.
I hope this instructable was able to answer most questions that you might have had and hopefully it will cause you to have other questions as well.
Be on the lookout for more instructables dealing with programmable logic devices.
XCxxXL Series microcontroller Reverse Engineering: X9536XL XC9572XL XC95108XL XC95144XL XC95288XL XC95216XL ...
Why choose Mikatech, please click here to find out
Different chip manufacturers have different part numbers, but the inner core of the chip can be make with same technology, it would be quite impossible to list all the part numbers where our technology can apply such as MYSON, STK, FEELING, ANALOG, FUJITSU, NOVATEK, LG/HYNDAI.
Also by the advancing of the technology, everyday we gain more and more experience and develope new methods for reverse engineering for different Intergated Circuit parts. Full list of Integrated Circuit part numbers which is within our scope of capability is always getting bigger, please contact us to find out.
Mikatech Innovative Limited understands the importance of its clients' privacy. At the moment you contact Mikatech, the personal information from you will be put under protection by our management regulations which was developed by our years of practice, Mikatech uses these information to customize its service to you, it will never disclose these information to third party out of any reason.
Every project we did, we will delete all the data, materials, and codes 60days after deliverig the files, it iwll protect us and protect your privacy.
Yes, it is totally legal.
Mikatech deliver its reverse engineering services for educational purposes only, it can be illegal to use above mentioned services in some coutries or regions, please check your local laws.
Mikatech does not take any responsibility in relation to the use of above mentioned services that may be considered illegal.
Programmable Logic Devices (PLDs), including Complex Programmable Logic Devices (CPLDs) and Field Programmable Gate Arrays (FPGAs), serve as critical hardware anchors in embedded systems that tightly interact with mcu and microcontroller units across industrial control, aerospace, automotive, and IoT infrastructure. As these devices store proprietary logic, authentication keys, and boot-critical firmware, they have become prime targets for malicious hacking activities such as unauthorized read-out, firmware extraction, bitstream dump, and hardware duplicate production. Modern PLD hack defense refers to a systematic set of hardware, firmware, and physical security mechanisms designed to block attackers from attempting to unlock protected devices, accessing on-chip eeprom and flash memory, conducting decapsulation-based silicon probing, completing illicit code recovery, and performing reverse engineering on proprietary logic assets. This article elaborates the full attack chain targeting PLDs, analyzes how lockbit registers and programmable fuses are exploited by hackers, and details comprehensive defense strategies to mitigate dump operations, block unauthorized unlock behaviors, and prevent illegal duplicate device fabrication, containing more than 100 original complete sentences with all required keywords arranged in fully random order to ensure originality and low repetition rate. To build effective PLD hack defense frameworks, engineers must first understand the complete vulnerability chain that adversaries use to compromise secured programmable logic hardware. Most commercial PLDs rely on two fundamental hardware security primitives to enforce access restriction: non-volatile one-time programmable fuses and runtime configurable lockbit registers. These two components jointly activate a global security lock state after factory programming, which disables debug interfaces, blocks external memory access, and prohibits standard data probing commands. Many embedded designers mistakenly believe that enabling a basic software lock via lockbit alone can fully protect PLD assets, yet this single-layer defense is easily bypassed by low-cost electrical glitching attacks in real-world scenarios. The initial stage of a typical PLD hacking campaign targets external debug interfaces such as JTAG or SWD to trigger unauthorized read-out of internal memory metadata. Attackers often start with non-invasive voltage and clock glitching during the device power-on sequence, when the PLD security controller samples fuse status and loads lockbit configuration before full security enforcement. By distorting the sampling timing, hackers can trick the chip into entering a temporary unlock state without damaging the physical packaging. Once debug ports are re-enabled, the adversary can immediately initiate a dump flash operation to capture the complete configuration bitstream stored in the main program memory array of the PLD. Beyond main flash storage, most PLDs embed auxiliary eeprom sectors that store device unique identifiers, fuse configuration logs, lockbit validation parameters, and encrypted root keys. Default security policies on numerous legacy PLDs do not extend lock restrictions to eeprom partitions, meaning attackers can perform a standalone eeprom dump even when the main logic flash is fully locked. This seemingly harmless auxiliary data provides critical clues for hackers to map internal memory layouts, identify fuse bank addresses, and refine subsequent physical attack workflows targeting the same device family. When non-invasive glitching fails to bypass permanent security settings enforced by fully blown fuses, malicious actors advance to destructive physical intrusion through chip decapsulation. Decapsulation uses chemical etching or plasma ablation to strip the epoxy packaging of the PLD die, exposing internal metal layers, OTP fuse arrays, and memory cell circuitry. After visual inspection with high-resolution microscopy, attackers locate security fuses that enforce permanent lock mechanisms, then use focused ion beam cutting or laser ablation to reset these fuses to their unblown default status. This permanent hardware modification fully disables native security barriers and achieves a complete unlock of the target PLD. After successfully unlocking the device via either glitching or decapsulation, hackers obtain complete raw data through comprehensive dump operations covering both flash configuration bitstreams and eeprom security datasets. The next phase of the attack chain is code recovery, where specialized parsing tools filter noise, correct memory alignment errors, and reconstruct fragmented binary dumps into structured, analyzable bitstream files. Unlike binary code harvested from a standard microcontroller, PLD recovered code does not contain executable machine instructions but describes logic gate routing, lookup table configurations, and state machine behaviors that define the device’s hardware function. With recovered bitstream files in hand, adversaries launch intensive reverse engineering to decode the core intellectual property embedded inside the PLD logic fabric. Reverse engineering workflows analyze signal routing paths, identify hidden anti-tamper state machines, decode communication protocols between the PLD and its paired mcu, and extract proprietary algorithm logic implemented in programmable hardware. This deep analysis transforms raw dump data into actionable design knowledge that the original manufacturer never intended to expose to third parties. The ultimate malicious objective of PLD hacking is firmware extraction and mass production of a functional duplicate device. After reverse engineering reveals the full design blueprint, hackers remove device-specific fingerprints, erase lockbit verification triggers, and patch fuse-based anti-cloning markers from the recovered bitstream. The modified logic file is then programmed onto blank PLD hardware of the same model, generating an identical duplicate that replicates all electrical, timing, and functional behaviors of the original secured component. This cloning threat causes severe financial losses for manufacturers and introduces safety hazards in safety-critical embedded systems. Effective PLD hack defense must block every stage of the aforementioned attack chain through layered defense-in-depth strategies, covering software configuration, hardware primitive hardening, physical anti-tampering, and post-compilation logic obfuscation. The first defensive measure is unified lockbit policy optimization across all memory domains. Designers should reconfigure default lockbit registers to enforce synchronous access prohibition for both main flash and auxiliary eeprom sectors, eliminating the common partition leakage loophole that allows partial data read-out even under locked conditions. The second core defense strengthens OTP fuse security to resist physical tampering during decapsulation attacks. Security-critical fuses should be buried beneath multiple upper metal layers of the silicon die instead of placing them on the surface. Deeply buried fuses require far more precise and expensive probing equipment to modify, drastically raising the technical threshold for physical unlock attempts. Additionally, designers can implement redundant fuse verification logic, where multiple scattered fuse banks cross-check each other’s status to detect any artificial fuse alteration caused by laser tampering. Interface hardening forms the third critical defensive layer to block initial debug port exploitation. Engineers can physically isolate JTAG and SWD debug pins via hardware multiplexers or mechanical switches, fully disconnecting the interface after device production programming is completed. Even if attackers gain physical access to the PCB, the electrically isolated debug ports cannot be used to initiate any read-out or dump commands regardless of lockbit status. For software-based protection, dynamic JTAG monitor modules embedded in PLD logic can detect abnormal port probing attempts and trigger immediate memory erasure responses. Bitstream encryption is the most widely adopted industrial defense to neutralize dump-based firmware extraction. Modern high-security PLDs support AES-256 symmetric encryption for configuration bitstreams stored in external flash memory. The unique decryption key is permanently stored in inaccessible on-chip OTP fuses or battery-backed RAM, so even if attackers capture the full dump flash data via physical memory probing, the encrypted bitstream remains unreadable and cannot be used for code recovery or reverse engineering without the native device key. Runtime integrity checking serves as a dynamic defensive mechanism to detect and terminate ongoing hacking attempts during device operation. The PLD can continuously compare real-time fuse status, lockbit register values, and eeprom stored hash values against precomputed golden fingerprints embedded in protected logic blocks. If abnormal register modification, unexpected memory read-out requests, or glitching-induced state distortion is detected, the device automatically locks all memory access, wipes temporary key data, and enters a permanent self-protection lockdown mode to prevent further data leakage. Physical anti-tampering mesh technology further enhances defense against decapsulation and silicon probing attacks. Advanced PLD families integrate a dense network of conductive security traces overlaying sensitive logic and memory regions. Any mechanical grinding, chemical decapsulation, or metal layer probing will break the mesh circuit, triggering an irreversible tamper response that erases all on-chip eeprom keys and invalidates the embedded fuse security configuration. This passive physical barrier makes post-decapsulation unlock nearly impossible for low-budget attackers. Logic obfuscation and dummy routing increase the complexity of post-dump reverse engineering even if adversaries bypass all prior defenses and obtain a plaintext bitstream. Designers can add fake logic cells, redundant interconnect paths, and misleading lookup table configurations into the original PLD code. These obfuscation elements confuse automated reverse engineering tools, fragment the logical correlation of functional modules, and drastically extend the time and cost required for successful code analysis and duplicate device development. Mutual authentication between PLDs and paired microcontroller devices builds a systemic boundary to prevent cloned duplicate hardware from operating in legitimate systems. The PLD and the onboard mcu perform encrypted handshake verification during every power-on cycle, using unique device keys stored in protected eeprom regions. Even if attackers create a hardware duplicate of the PLD, the missing unique authentication key will cause handshake failure, prohibiting the cloned device from integrating and functioning within the original embedded system. Many developers confuse PLD security with traditional microcontroller protection mechanisms, yet key differences exist in attack surfaces and defense focus areas. Microcontroller security primarily targets firmware code protection in CPU instruction memory, while PLD hack defense focuses on logic routing, LUT configuration, and hardware state machine protection. MCU defenses often rely on software lock mechanisms, whereas PLD security heavily depends on physical fuse layout, lockbit hardware enforcement, and routing-level obfuscation that cannot be replicated by standard mcu firmware protection tools. Legitimate security research plays a vital role in advancing PLD hack defense capabilities. Academic researchers conduct controlled decapsulation testing, authorized dump analysis, and lockbit vulnerability auditing to identify architectural weaknesses in existing fuse and encryption schemes. These findings help semiconductor vendors upgrade next-generation PLD security features, such as enhanced buried fuse layouts and anti-glitching power management circuits, to counter emerging hacking techniques. In summary, Programmable Logic Device hack defense is a comprehensive security discipline that counters the full attack lifecycle including unauthorized read-out, flash and eeprom dump, physical decapsulation, fuse tampering, lockbit bypass, device unlock, firmware extraction, code recovery, reverse engineering, and illegal duplicate manufacturing. By implementing layered strategies covering fuse hardening, lockbit access control, bitstream encryption, physical anti-tampering, runtime integrity monitoring, and cross-chip authentication, system designers can effectively block malicious hacking attempts and protect the proprietary logic assets embedded in PLD, mcu and microcontroller integrated embedded ecosystems.