Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
CTU CAN FD IP Core
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
14
Issues
14
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
canbus
CTU CAN FD IP Core
Commits
83e3341b
Commit
83e3341b
authored
Apr 30, 2020
by
Ille, Ondrej, Ing.
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
doc: Extend description and update figures.
parent
47ad6f94
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
396 additions
and
94 deletions
+396
-94
doc/core/Progdokum.lyx
doc/core/Progdokum.lyx
+376
-9
doc/core/ctu_can_fd_architecture.lyx
doc/core/ctu_can_fd_architecture.lyx
+20
-85
doc/pics/Visio/diagrams_bcp3.vsdx
doc/pics/Visio/diagrams_bcp3.vsdx
+0
-0
doc/pics/Visio_generated/FSM_protocol_control.pdf
doc/pics/Visio_generated/FSM_protocol_control.pdf
+0
-0
No files found.
doc/core/Progdokum.lyx
View file @
83e3341b
...
...
@@ -509,7 +509,7 @@ filename "version.tex"
\
noindent
\
align
center
\
begin_inset
Tabular
<
lyxtabular
version
=
"3"
rows
=
"1
4
"
columns
=
"4"
>
<
lyxtabular
version
=
"3"
rows
=
"1
5
"
columns
=
"4"
>
<
features
tabularvalignment
=
"middle"
>
<
column
alignment
=
"center"
valignment
=
"top"
width
=
"1.5cm"
>
<
column
alignment
=
"center"
valignment
=
"top"
width
=
"2cm"
>
...
...
@@ -1020,13 +1020,51 @@ Clarify behaviour of Transmitter delay measurement.
</
cell
>
</
row
>
<
row
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
bottomline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
2.2.4
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
Ondrej
Ille
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
13
-
12
-
2019
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
rightline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
Clarify
that
only
TEC
above
255
will
cause
node
to
go
Bus
off
.
\
end_layout
\
end_inset
</
cell
>
</
row
>
<
row
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
bottomline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
2.2.5
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
bottomline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
...
...
@@ -1042,7 +1080,7 @@ Ondrej Ille
\
begin_inset
Text
\
begin_layout
Plain
Layout
13
-
12
-
2019
30
-
4
-
2020
\
end_layout
\
end_inset
...
...
@@ -1051,7 +1089,7 @@ Ondrej Ille
\
begin_inset
Text
\
begin_layout
Plain
Layout
Clarify
that
only
TEC
above
255
will
cause
node
to
go
Bus
off
.
Add
SETTING
[
PEX
]
and
Protocol
exception
support
.
\
end_layout
\
end_inset
...
...
@@ -2610,12 +2648,341 @@ n 1.0.
This
register
shall
be
modified
only
when
SETTINGS
[
ENA
]
=
0.
\
end_layout
\
begin_layout
Subsection
Implementation
type
\
end_layout
\
begin_layout
Standard
ISO11898
-
1
2015
defines
three
implementation
types
of
CAN
protocol
:
Classical
CAN
,
CAN
FD
tolerant
and
CAN
FD
enabled
.
CTU
CAN
FD
supports
all
three
implementation
types
and
compliance
to
each
implementation
can
be
changed
via
MODE
[
FDE
]
and
SETTINGS
[
PEX
]
registers
.
Both
of
these
registers
chall
be
modified
only
when
SETTINGS
[
ENA
]
=
0.
\
end_layout
\
begin_layout
Standard
CTU
CAN
FD
can
be
configured
to
support
only
CAN
2.0
protocol
.
When
MODE
[
FDE
]
=
0
,
CTU
CAN
FD
can
't receive CAN FD frames and transmitts
error frames as response to CAN FD frames.
When MODE[FDE] = 0, SW shall not insert CAN FD frames for transmission
as this will also result in transmission of error frames.
\
begin_inset
Float
table
placement
h
wide
false
sideways
false
status
open
\
begin_layout
Plain
Layout
\
noindent
\
align
center
\
begin_inset
Tabular
<
lyxtabular
version
=
"3"
rows
=
"5"
columns
=
"4"
>
<
features
tabularvalignment
=
"middle"
>
<
column
alignment
=
"left"
valignment
=
"top"
width
=
"17text%"
>
<
column
alignment
=
"left"
valignment
=
"top"
width
=
"10text%"
>
<
column
alignment
=
"left"
valignment
=
"top"
width
=
"10text%"
>
<
column
alignment
=
"left"
valignment
=
"top"
width
=
"52text%"
>
<
row
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
Implementation
type
\
begin_inset
ERT
status
open
\
begin_layout
Plain
Layout
\
backslash
cellcolor
{
gray
}
\
end_layout
\
end_inset
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
MODE
[
FDE
]
\
begin_inset
ERT
status
open
\
begin_layout
Plain
Layout
\
backslash
cellcolor
{
gray
}
\
end_layout
\
end_inset
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
SETTING
[
PEX
]
\
begin_inset
ERT
status
open
\
begin_layout
Plain
Layout
\
backslash
cellcolor
{
gray
}
\
end_layout
\
end_inset
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
rightline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
Behavior
\
begin_inset
ERT
status
open
\
begin_layout
Plain
Layout
\
backslash
cellcolor
{
gray
}
\
end_layout
\
end_inset
\
end_layout
\
end_inset
</
cell
>
</
row
>
<
row
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
Classical
CAN
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
0
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
0
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
rightline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
When
CTU
CAN
FD
detects
recessive
FDF
bit
,
it
responds
with
error
frame
.
\
end_layout
\
end_inset
</
cell
>
</
row
>
<
row
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
CAN
FD
tolerant
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
0
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
1
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
rightline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
When
CTU
CAN
FD
detects
recessive
FDF
bit
,
it
enters
bus
integration
state
.
\
end_layout
\
end_inset
</
cell
>
</
row
>
<
row
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
CAN
FD
enabled
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
1
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
0
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"left"
valignment
=
"top"
topline
=
"true"
leftline
=
"true"
rightline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
CTU
CAN
FD
is
able
to
receive
/
transmit
CAN
FD
frames
.
When
CTU
CAN
FD
detects
recessive
value
on
position
of
\
begin_inset
Quotes
eld
\
end_inset
res
\
begin_inset
Quotes
erd
\
end_inset
bit
(
one
bit
after
FDF
bit
),
it
responds
with
error
frame
.
\
end_layout
\
end_inset
</
cell
>
</
row
>
<
row
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
bottomline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
CAN
FD
enabled
-
with
protocol
exception
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
bottomline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
1
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
bottomline
=
"true"
leftline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
1
\
end_layout
\
end_inset
</
cell
>
<
cell
alignment
=
"center"
valignment
=
"top"
topline
=
"true"
bottomline
=
"true"
leftline
=
"true"
rightline
=
"true"
usebox
=
"none"
>
\
begin_inset
Text
\
begin_layout
Plain
Layout
CTU
CAN
FD
is
able
to
receive
/
transmit
CAN
FD
frames
.
When
CTU
CAN
FD
detects
recessive
value
on
position
of
\
begin_inset
Quotes
eld
\
end_inset
res
\
begin_inset
Quotes
erd
\
end_inset
bit
(
one
bit
after
FDF
bit
),
it
enters
bus
integration
state
.
This
configuration
tolerates
future
extensions
of
CAN
FD
protocol
(
e
.
g
.
CAN
XL
).
\
end_layout
\
end_inset
</
cell
>
</
row
>
</
lyxtabular
>
\
end_inset
\
end_layout
\
begin_layout
Plain
Layout
\
noindent
\
align
center
\
begin_inset
Caption
Standard
\
begin_layout
Plain
Layout
CAN
implementation
type
\
begin_inset
CommandInset
label
LatexCommand
label
name
"tab:apb-interface"
\
end_inset
\
end_layout
\
end_inset
\
end_layout
\
end_inset
\
end_layout
\
begin_layout
Description
Note
When
CTU
CAN
FD
is
configured
as
Classical
CAN
/
CAN
FD
tolerant
node
and
user
attempts
to
send
CAN
FD
frame
(
FRAME_FORMAT
[
FDF_BIT
]
=
1
in
TXT
buffer
),
it
will
detect
error
upon
its
own
transmitted
frame
.
Therefore
SW
shall
not
attempt
to
send
CAN
FD
frames
when
CTU
CAN
FD
is
configured
as
Classical
CAN
/
CAN
FD
tolerant
node
.
\
end_layout
\
begin_layout
Description
Note
When
CTU
CAN
FD
is
configured
as
Classical
CAN
/
CAN
FD
tolerant
node
,
SETTINGS
[
NISOFD
]
register
has
no
effect
.
\
end_layout
\
begin_layout
Subsection
...
...
doc/core/ctu_can_fd_architecture.lyx
View file @
83e3341b
...
...
@@ -1415,16 +1415,23 @@ literal "false"
\end_inset
.
With regards to this document, CTU CAN FD is
\begin_inset Quotes eld
\end_inset
With regards to this document, CTU CAN FD supports all implementation options
(Classical CAN, CAN FD Tolerant, CAN FD enabled).
Compliance to each of these options can be configured via dedicated register
(therefore behavior can be changed for and existing CTU CAN FD instance).
Reffer to
\begin_inset CommandInset citation
LatexCommand cite
key "key-2"
literal "false"
CAN FD enabled
\begin_inset Quotes erd
\end_inset
implementation.
Support of optional features is described in Table
for description of CTU CAN FD configuration.
\end_layout
\begin_layout Standard
Support of optional features is described in Table
\begin_inset CommandInset ref
LatexCommand ref
reference "tab:iso-optional-features"
...
...
@@ -2141,7 +2148,7 @@ Disabling of protocol exception event on res bit detected recessive
\begin_inset Text
\begin_layout Plain Layout
Not
Supported
Supported
\end_layout
\end_inset
...
...
@@ -2150,24 +2157,7 @@ Not Supported
\begin_inset Text
\begin_layout Plain Layout
Detecting
\color red
res
\color inherit
bit following
\color red
FDF
\color inherit
bit is always treated as
\color red
form error
\color inherit
.
No
\color red
protocol exception event
\color inherit
is implemented!
Protocol exception is configurable via SETTINGS[PEX] register.
\end_layout
\end_inset
...
...
@@ -16864,7 +16854,7 @@ status open
\noindent
\align center
\begin_inset Tabular
<lyxtabular version="3" rows="
7
" columns="2">
<lyxtabular version="3" rows="
6
" columns="2">
<features tabularvalignment="middle">
<column alignment="left" valignment="middle" width="30.5line%">
<column alignment="left" valignment="top" width="63line%">
...
...
@@ -16986,65 +16976,10 @@ recessive
\color red
form error
\color inherit
is detected.
is detected
when SETTINGS[PEX] = '0'
.
Recessive bit would mean extending beyond CAN FD standard (CAN XL).
This is not supported.
Protocol exception is not implemented on further extensions beyond CAN
FD protocol.
\end_layout
\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\color red
EDL
\color inherit
/
\color red
r0
\color inherit
bit in CAN frames with
\color red
base identifier
\color inherit
.
\color red
EDL
\color inherit
/
\color red
r1
\color inherit
bit in CAN FD frames with
\color red
extended identifier
\color inherit
.
\end_layout
\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
If
\color red
recessive
\color inherit
bit is received and CAN FD support is disabled MODE[FDE] = '0',
\color red
form error
\color inherit
is detected.
Recessive bit here indicates CAN FD frame.
When SETTINGS[PEX] = '1', form error is not detected and CTU CAN FD enters
integration.
\end_layout
\end_inset
...
...
doc/pics/Visio/diagrams_bcp3.vsdx
View file @
83e3341b
No preview for this file type
doc/pics/Visio_generated/FSM_protocol_control.pdf
View file @
83e3341b
No preview for this file type
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment