Logic 使3位计数器按顺序计数

Logic 使3位计数器按顺序计数,logic,computer-science,cpu-architecture,Logic,Computer Science,Cpu Architecture,我现在正在摆弄触发器,我用(3)D触发器制作了一个3位计数器。我想知道是否有办法让它不按顺序计数。所以现在,一个典型的计数器从0-7开始计数,或者二进制:000->111,然后重置回0。但是,需要输入什么逻辑才能使其计数,例如:0、1、6、3、4、5、7、2-->再次返回到0?我一直在胡闹,显然我需要一些逻辑门。但不完全确定如何/在何处使用此设计修改它最简单的方法是定义当前输出线xyz(000001010011,,…)到首选输出线x'y'z(000001110011,…)之间的映射,然后,为每个

我现在正在摆弄触发器,我用(3)D触发器制作了一个3位计数器。我想知道是否有办法让它不按顺序计数。所以现在,一个典型的计数器从0-7开始计数,或者二进制:000->111,然后重置回0。但是,需要输入什么逻辑才能使其计数,例如:0、1、6、3、4、5、7、2-->再次返回到0?我一直在胡闹,显然我需要一些逻辑门。但不完全确定如何/在何处使用此设计修改它

最简单的方法是定义当前输出线xyz(000001010011,,…)到首选输出线x'y'z(000001110011,…)之间的映射,然后,为每个首选输出行准备一个包含输入和输出的真值表,并使用卡诺图进行求解,或者使用@hayesti I获得该输出行的kmap和真值表部分。但是我如何使用计数器从1跳到6(跳过2-5),然后在下一个时钟滴答滴答地跳到3?这就是我感到困惑的地方。我只是解释@hayesti的建议…你不需要跳,你只需要像往常一样继续,你当前计数器的输出保持不变(000001010011…)。然后将其馈送至准备将其转换为首选格式的额外逻辑电路(000001110011,…)。您需要一个卡诺图,将(000001010011…)作为输入,将(000001010011…)作为输出。所以在第三个时钟上,你原来的计数器将产生010,然后馈送到第二个电路,它将产生110。现在,如果你把整件事情都框起来,你有一个输入(时钟)和三个输出,它们产生你的任意序列。@Isuru好的,我明白了。所以,如果我想尝试每隔一个奇数/偶数和倒数(让我们做偶数):0,4,2,6,我有一个真值表,1代表000010,100,110,我的K图产生:C。我可以做到这一点没问题,我只是缺乏如何将其转化为我的大门的知识。特别是现在我已经消除了4个数字/时钟滴答声。比如如果我只想数数:1,7,2。我现在有8次点击,但有3次?