There are two important steps to produce a HACD: mine HACD and bid with others for the HACD using HAC.
In the first step, miners use CPU to mine HACDs of different 6-letter IDs within 5 blocks of Hacash blockchain. In theory, as long as the hash rate is large enough, all HACDs can be mined without an upper limit. But as the mining difficulty continues to increase after each HACD is mined, the same amount of hash rate yields less HACDs.
10 HACD mined and bidding
After HACDs are mined, miners needs to bid for the HACD using HAC. The bidding takes palce across 5 blocks, with an average of 25 minutes. In the fourth block, the bidding ends. And the fifth block packs the HACD for the miner who has won the bid. The HACD that has not been bidded for is discarded and goes back to the Hacash blockchain, waiting to be mined the next time.