I have spent my time to do research and follow two websites :
https://www.raspberrypi.org/documentation/linux/kernel/building.md
https://github.com/umiddelb/armhf/wiki/How-To-compile-a-custom-Linux-kernel-for-your-ARM-device
and then I tried follow commands to compile and update the current kernel:
//Download the kernel as you suggested
$git clone https://github.com/terasic/linux-socfpga.git
$git checkout 3bb556b -b console
// Export to PATH environment
$export ARCH=arm
$export CROSS_COMPILE=arm-linux-gnueabihf-
//Clean the configuration and create .config file
$ make mrproper
$ make socfpga_defconfig
$ make menuconfig // I didn't change any default setting in this step
// Create zImage, modules and dtbs
$ make -j14 zImage modules dtbs
// Mount SD card
$ mkdir mnt
$ mkdir mnt/fat32
$ mkdir mnt/ext4
$ sudo mount /dev/sdc1 mnt/fat32
$ sudo mount /dev/sdc2 mnt/ext4
// Install the modules:
$sudo env PATH=$PATH make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=mnt/ext4 modules_install
// Copy the kernel and Device Tree blobs onto the SD card
$ sudo cp arch/arm/boot/zImage mnt/fat32/
$ sudo cp arch/arm/boot/dts/*.dtb mnt/fat32/
//Unmount SD card
$ sudo umount mnt/fat32
$ sudo umount mnt/ext4
And finally, I put the SD card back to DE10 Nano Board. But the board cannot boot into Linux OS. Nothing output on the HDMI Screen.
I don't know what happens with Kernel or I already did somethings wrong in steps above.