大家好、
当我通过 RAM 链接文件将程序转储到 RAM 存储器中时、完成指令需要140ns。 但是、当我通过通用闪存文件在闪存存储器中上传程序时、需要1.5微秒才能完成指令。
请给出一些想法、以便在我 将程序上传到闪存存储器中时减少指令周期延迟。
我使用的是60MHz 时钟、可以在120MHz 时钟下工作。
请回复。
谢谢、
Aslam
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
大家好、
当我通过 RAM 链接文件将程序转储到 RAM 存储器中时、完成指令需要140ns。 但是、当我通过通用闪存文件在闪存存储器中上传程序时、需要1.5微秒才能完成指令。
请给出一些想法、以便在我 将程序上传到闪存存储器中时减少指令周期延迟。
我使用的是60MHz 时钟、可以在120MHz 时钟下工作。
请回复。
谢谢、
Aslam
以下是我的代码片段:
if (((GpioDataRegs.GPADD.bit.GPIO12 =0)&&(GpioDataRegs.GPADD.bit.GPIO29 =0))
{
GpioDataRegs.GPACLEAR.bit.GPIO6=1;
GpioDataRegs.GPASET.bit.GPIO7=1;
}
否则、如果((GpioDataRegs.GPADD.bit.GPIO12 = 1)&(GpioDataRegs.GPADD.bit.GPIO29 = 0)))
{
GpioDataRegs.GPASET.bit.GPIO6 = 1;
GpioDataRegs.GPASET.bit.GPIO7=1;
}
否则、如果((GpioDataRegs.GPADAT.bit.GPIO12 = 1)&(GpioDataRegs.GPADD.bit.GPIO29 = 1)))
{
GpioDataRegs.GPASET.bit.GPIO6 = 1;
GpioDataRegs.GPACLEAR.bit.GPIO7=1;
}
否则、如果((GpioDataRegs.GPADD.bit.GPIO12 = 0)&(GpioDataRegs.GPADD.bit.GPIO29 = 1)))
{
GpioDataRegs.GPASET.bit.GPIO6 = 1;
GpioDataRegs.GPASET.bit.GPIO7=1;
}
我实际上尝试 的是通过 GPIO12和 GPIO29读取两个 PWM 输出、根据它们的状态、我正在更改 GPIO6和 GPIO7的状态。
但从 GPIO6和 GPIO7获取的输出会延迟4微秒。 因此、对于更高的 PWM 频率(100kHz)、我仅从 GPIO6和 GPIO7获得高电平状态。
但是、当我在 RAM 存储器中上传程序时、同一个程序仍在工作(延迟500-900ns、可以忽略不计)。
当我在闪存存储器中上传程序时、它会失败。
请给我一个解决方案。
谢谢、
Aslam
您好、Aslam、
请参阅下面链接的常见问题解答。 您可能需要检查闪存等待状态设置或配置从 RAM 运行的时间关键型代码。
https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/759912
[引用用户="Mohamed Aslam1"]我使用的是60MHz 时钟,因此可以在120MHz 时钟下工作。
F28027器件具有60MHz 的最大时钟频率。
最棒的
Kevin