Отличия процессора R1 от P1 » History » Version 3
Version 2 (krufter_multiclet, 07/11/2014 12:00 PM) → Version 3/6 (krufter_multiclet, 07/11/2014 12:42 PM)
h1. Отличия процессора R1 от P1
Перечень основных отличий процессоров R1 от P1:
1)В процессоре R1 появился доступ к внешней памяти:
можно управлять 2-мя банками PROM, одним банком I/O,
4-мя банками SRAM, двумя банками SDRAM.
Теперь ПЗУ – любая внешняя FLASH, тогда как в первом процессоре
внешнее FLASH ПЗУ - XCF04S, XCF08P, XCF16P, XCF32P. Но и в процессор Р1
можно, например, грузить прошивку по spi реализовав простой протокол.
Внутренняя память данных и программ процессора R1 увеличилась до 256 Кбайт каждая.
2)Поддержка +реконфигурации+ клеток. Поддержка косвенной адресации.
2)Обновлены(добавлены новые) системные регистры.
Появился блок работы с памятью DTC.
3)Работают прерывания от всех блоков периферии.
4)Плавающая запятая в R1 теперь поддерживает двойную точность.
5)Периферия:
- PLL (входная частота 8 - 16 МГц)
- АЦП (16 бит, 48 KSPS, 8 каналов)
- ЦАП (12 бит, 125 KSPS, 2 канала)
- USB 2.0 (девайс, DMA)
- RTC с календарем
- I2S ведущий
6)Отличия в системе команд:
|*система команд*|*P1*|*R1*|
|@N, @M|ARG1=@N; ARG2=@M|ARG1=@N; ARG2=@M|
|@N, #R|ARG1=@N; ARG2=#GPR или #CR или [#IR]|ARG1=@N; ARG2=#GPR или #CR или #IR|
|@N, @M + V|ARG1=@N; ARG2=V (@M=@0, не исп.)|ARG1=@N; ARG2=@M+V(@M=@0=0, сложение 32 разр. целочисл. беззнак.)|
|@N, #R + V|ARG1=@N; ARG2=[#IR+V] (32 сложение разр. целочисл. беззнак.)|ARG1=@N; ARG2=#GPR+V или #CR+V или #IR+V(сложение 32 разр. целочисл. беззнак.)|
|@N, [@M]|нет|ARG1=@N; ARG2=[@M]|
|@N, [#R]|нет|ARG1=@N; ARG2=[#GPR] или [#CR] или [#IR]|
|@N, [@M + V]|нет|ARG1=@N; ARG2=[@M+V](@M=@0=0, сложение 32 разр. целочисл. беззнак.)|
|@N, [#R + V]|нет|ARG1=@N; ARG2=[#GPR+V] или [#CR+V] или [#IR+V](сложение 32 разр. целочисл. беззнак.)|
@M - значение из коммутатора
#R - регистр
GPR - регистр общего назначения
CR - системный регистр
IR - индексный регистр
V - константа
[x] - значение берется из памяти по адресу заданному в скобках
ARG1 - первый аргумент команды
ARG2 - второй аргумент команды
Перечень основных отличий процессоров R1 от P1:
1)В процессоре R1 появился доступ к внешней памяти:
можно управлять 2-мя банками PROM, одним банком I/O,
4-мя банками SRAM, двумя банками SDRAM.
Теперь ПЗУ – любая внешняя FLASH, тогда как в первом процессоре
внешнее FLASH ПЗУ - XCF04S, XCF08P, XCF16P, XCF32P. Но и в процессор Р1
можно, например, грузить прошивку по spi реализовав простой протокол.
Внутренняя память данных и программ процессора R1 увеличилась до 256 Кбайт каждая.
2)Поддержка +реконфигурации+ клеток. Поддержка косвенной адресации.
2)Обновлены(добавлены новые) системные регистры.
Появился блок работы с памятью DTC.
3)Работают прерывания от всех блоков периферии.
4)Плавающая запятая в R1 теперь поддерживает двойную точность.
5)Периферия:
- PLL (входная частота 8 - 16 МГц)
- АЦП (16 бит, 48 KSPS, 8 каналов)
- ЦАП (12 бит, 125 KSPS, 2 канала)
- USB 2.0 (девайс, DMA)
- RTC с календарем
- I2S ведущий
6)Отличия в системе команд:
|*система команд*|*P1*|*R1*|
|@N, @M|ARG1=@N; ARG2=@M|ARG1=@N; ARG2=@M|
|@N, #R|ARG1=@N; ARG2=#GPR или #CR или [#IR]|ARG1=@N; ARG2=#GPR или #CR или #IR|
|@N, @M + V|ARG1=@N; ARG2=V (@M=@0, не исп.)|ARG1=@N; ARG2=@M+V(@M=@0=0, сложение 32 разр. целочисл. беззнак.)|
|@N, #R + V|ARG1=@N; ARG2=[#IR+V] (32 сложение разр. целочисл. беззнак.)|ARG1=@N; ARG2=#GPR+V или #CR+V или #IR+V(сложение 32 разр. целочисл. беззнак.)|
|@N, [@M]|нет|ARG1=@N; ARG2=[@M]|
|@N, [#R]|нет|ARG1=@N; ARG2=[#GPR] или [#CR] или [#IR]|
|@N, [@M + V]|нет|ARG1=@N; ARG2=[@M+V](@M=@0=0, сложение 32 разр. целочисл. беззнак.)|
|@N, [#R + V]|нет|ARG1=@N; ARG2=[#GPR+V] или [#CR+V] или [#IR+V](сложение 32 разр. целочисл. беззнак.)|
@M - значение из коммутатора
#R - регистр
GPR - регистр общего назначения
CR - системный регистр
IR - индексный регистр
V - константа
[x] - значение берется из памяти по адресу заданному в скобках
ARG1 - первый аргумент команды
ARG2 - второй аргумент команды